[en] Resource management is critical to guarantee Quality of Service when various stakeholders share the execution environment, such as cloud or mobile environments. In this context, providing management techniques compatible with standard practices, such as component models, is essential. Resource management is often realized through monitoring or pro- cess isolation (using virtual machines or system containers). These techniques (i) impose varying levels of overhead de- pending on the managed resource, and (ii) are applied at different abstraction levels, such as processes, threads or ob- jects. Thus, mapping components to system-level abstractions in the presence of resource management requirements can lead to sub-optimal systems. We propose Squirrel, an approach to tune component deployment and resource management in order to reduce management overhead. At run- time, Squirrel uses an architectural model annotated with resource requirements to guide the mapping of components to system abstractions, providing different resource management capabilities and overhead. We present an implementation of Squirrel, using a Java component framework, and a set of experiments to validate its feasibility and over- head. We show that choosing the right component-to-system mappings at deployment-time reduces performance penalty and/or volatile main memory use.
Disciplines :
Computer science
Author, co-author :
Gonzalez-Herrera, Inti; University Of Rennes 1
Bourcier, Johan; University of Rennes 1
Rudametkin, Walter; University of Lille
Barais, Olivier; University of Rennes 1
Fouquet, François ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT)
External co-authors :
yes
Language :
English
Title :
Squirrel: Architecture Driven Resource Management
Publication date :
2016
Event name :
31st Annual ACM Symposium on Applied Computing (SAC'16)
Event organizer :
University of Pisa and Scuola Superiore Sant’Anna
Event place :
Pisa, Italy
Event date :
04-04-2016 to 08-04-2016
Audience :
International
Main work title :
31st Annual ACM Symposium on Applied Computing (SAC'16)
A. Beugnard, J.-M. Jézéquel, N. Plouzeau, and D. Watkins. Making components contract aware. Computer, 32(7):38-45, July 1999.
W. Binder. Portable and accurate sampling profiling for java. Softw. Pract. Exper., 36(6):615-650, 2006.
S. M. Blackburn and et al. The dacapo benchmarks: Java benchmarking development and analysis. OOPSLA'06, pages 169-190, NY, USA, 2006. ACM.
S. Bouchenak, D. Hagimont, and N. De Palma. Techniques for implementing efficient java thread serialization. AICCSA'03, pages 14-18, 2003.
G. Czajkowski and L. Daynàs. Multitasking without compromise: a virtual machine evolution. ACM SIGPLAN Notices, 47(4a):60-73, 2012.
F. Fouquet, B. Morin, F. Fleurey, O. Barais, N. Plouzeau, and J.-M. Jezequel. A dynamic component model for cyber physical systems. In Proc. of the 15th Symp. on Component Based Soft. Eng., CBSE'12, pages 135-144, New York, NY, 2012.
N. Geoffray, G. Thomas, G. Muller, P. Parrend, S. Frenot, and B. Folliot. I-jvm: a java virtual machine for component isolation in osgi. DSN'09, pages 544-553, June 2009.
I. Gonzalez-Herrera, J. Bourcier, E. Daubert, W. Rudametkin, O. Barais, F. Fouquet, and J.-M. Jézéquel. Scapegoat: an Adaptive monitoring framework for Component-based systems. In Proc. of WICSA 2014, Australie. IEEE/IFIP.
R. Guerraoui and M. E. Fayad. Oo distributed programming is not distributed oo programming. Communications of the ACM, 42(4):101-104, 1999.
F. Guidec, Y. Mahéo, and L. Courtrai. A java middleware platform for resource-aware distributed applications. ISPDC'03, pages 96-103, USA, 2003.
J. Hulaas and W. Binder. Program transformations for light-weight cpu accounting and control in the jvm. Higher Order Symbol. Comput., 21(1-2):119-146, June 2008.
I. Kalkov, D. Franke, J. F. Schommer, and S. Kowalewski. A real-time extension to the android platform. JTRES'12, pages 105-114, NY, 2012.
R. Krebs, A. Wert, and S. Kounev. Multi-Tenancy Performance Benchmark for Web Application Platforms. ICWE 2013. Springer-Verlag, July 2013.
Y. Maurel, A. Bottaro, R. Kopetz, and K. Attouchi. Adaptive monitoring of end-user osgi-based home boxes. CBSE'12, pages 157-166, USA, 2012. ACM.
L. Moreau and C. Queinnec. Resource aware programming. ACM Trans. Program. Lang. Syst., 27(3):441-476, May 2005.
B. Morin, O. Barais, G. Nain, and J.-M. Jezequel. Taming dynamically adaptive systems using models and aspects. In In Proc., ICSE'09, pages 122-132, USA, 2009.
B. Morin, T. Mouelhi, F. Fleurey, Y. L. Traon, O. Barais, and J.-M. Jézéquel. Security-driven model-based dynamic adaptation. In C. Pecheur, J. Andrews, and E. D. Nitto, editors, ASE, pages 205-214. ACM, 2010.
K. Nagata, Y. Nakamura, S. Nomura, and S. Yamaguchi. Measuring and improving application launching performance on android devices. CANDAR'13, pages 636-638, Washington, DC, USA, 2013.
Q. O. Snell, A. R. Mikler, and J. L. Gustafson. Netpipe: A network protocol independent performance evaluator. IASTED'96, 1996.
R. C. Unrau and O. Krieger. Efficient sleep/wake-up protocols for user-level IPC. ICPP'98, 1998.
K. Varda. Protocol buffers. http://code.google.com/apis/protocolbuffers/.