Abstract
Self-adaptive techniques have been introduced in the last few years to tackle the growing complexity of software/hardware systems, where a significant complexity factor leans on their dynamic nature that is subject to sudden (and sometime unpredictable) changes. Adaptation actions are aimed at satisfying system goals that are often related to non-functional properties such as performance, reliability, etc. In principle, an adaptable software/hardware system can be considered a controllable plant and, in fact, quite promising results have been recently obtained by applying control theory to adaptation problems in this domain.
Goal of this paper is to provide a design support for introducing adaptation mechanisms in Queuing Network models of software/hardware systems. For this goal, we present a consolidated library of modeling components (in Modelica) representing Queuing Network elements with adaptable parameters. Adaptive Queuing Networks (AQN) can be built by properly assembling such elements. Once feedback control loop(s) are plugged into AQNs, it is possible to analyze and control (before the implementation) the system performance under changes due to external disturbances.
We show the construction of an AQN example model by using our library, and we demonstrate the effectiveness of our approach through experimental results provided by the simulation of a controlled AQN.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Note that each parameter described in this section refers to a specific class of jobs, where not differently specified.
- 2.
Note that in a Station the Rout_req input of the StationQueue element has been joined to the homonym output of the StationServer to implement the policy of job extraction from the queue, so they disappear from the figure.
- 3.
For sake of simplicity, only p has been defined as a knob in the current implementation of our library. The library is open to make all other probabilities as knobs.
- 4.
A resource can be downloaded at http://www.di.univaq.it/davide.arcelli/resources/EPEW2016.zip including the current version of our library and the usage example in this paper.
References
Aalto, S., Ayesta, U., Borst, S.C., Misra, V., Núñez-Queija, R.: Beyond processor sharing. SIGMETRICS Perform. Eval. Rev. 34(4), 36–43 (2007)
Ansel, J., Chan, C., Wong, Y.L., Olszewski, M., Zhao, Q., Edelman, A., Amarasinghe, S.: PetaBricks: a language and compiler for algorithmic choice. In: ACM PLDI (2009)
Arcelli, D., Cortellessa, V.: Challenges in applying control theory to software performance engineering for adaptive systems. In: ICPE, pp. 35–40 (2016)
Arcelli, D., Cortellessa, V., Filieri, A., Leva, A.: Control theory for model-based performance-driven software adaptation. In: QoSA 2015, pp. 11–20 (2015)
Baek, W., Chilimbi, T.: Green: a framework for supporting energy-conscious programming using controlled approximation. In: ACM PLDI (2010)
Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Commun. ACM 55(9), 69–77 (2012)
Cardellini, V., Casalicchio, E., Grassi, V., Iannucci, S., Presti, F.L., Mirandola, R.: MOSES: a framework for QoS driven runtime adaptation of service-oriented systems. IEEE Trans. Softw. Eng. 38(5), 1138–1159 (2012)
Cascaval, C., Duesterwald, E., Sweeney, P.F., Wisniewski, R.W.: Performance and environment monitoring for continuous program optimization. IBM J. Res. Dev. 50(2/3), 239–248 (2006)
Dorf, R., Bishop, R.: Modern Control Systems. Prenntice Hall, Upper Saddle River (2008)
Dotsenko, Y., Baghsorkhi, S.S., Lloyd, B., Govindaraju, N.K.: Auto-tuning of fast fourier transform on graphics processors. In: PPoPP, pp. 257–266 (2011)
Dutreilh, X., Moreau, A., Malenfant, J., Rivierre, N., Truck, I.: From data center resource allocation to control theory and back. In: CLOUD, pp. 410–417 (2010)
Eeckhout, L., Vandierendonck, H., Bosschere, K.D.: Quantifying the impact of input data sets on program behavior and its applications. J. Instr.-Level Parallelism 5(1), 1–33 (2003)
Filieri, A., Ghezzi, C., Leva, A., Maggio, M.: Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements. In: ASE, pp. 283–292 (2011)
Fritzson, P., Engelson, V.: Modelica: A unified object-oriented language for system modeling and simulation. In: Jul, E. (ed.) ECOO. LNCS, vol. 1445, pp. 67–90. Springer, Heidelberg (1998)
Hellerstein, J.L.: Self-managing systems: a control theory foundation. In: ECBS, pp. 708–708 (2005)
Hellerstein, J.L., Morrison, V., Eilebrecht, E.: Applying control theory in the real world: experience with building a controller for the.net thread pool. SIGMETRICS Perform. Eval. Rev. 37(3), 38–42 (2010)
Hoffmann, H., Holt, J., Kurian, G., Lau, E., Maggio, M., Miller, J., Neuman, S., Sinangil, M., Sinangil, Y., Agarwal, A., Chandrakasan, A., Devadas, S.: Self-aware computing in the angstrom processor. In: DAC (2012)
Kramer, J., Magee, J.: Self-managed systems: an architectural challenge. In: FOSE, pp. 259–268 (2007)
Lazowska, E., Kahorjan, J., Graham, G.S., Sevcik, K.C., Performance, Q.S.: Computer System Analysis Using Queueing Network Models. Prentice-Hall Inc., Upper Saddle River (1984)
Leva, A., Maggio, M., Papadopoulos, A.V., Terraneo, F.: Control-based Operating System Design. Institution of Engineering and Technology, London (2013)
Levine, W.: The Control Handbook. CRC Press, Boca Raton (2005)
Lu, C., Lu, Y., Abdelzaher, T., Stankovic, J., Son, S.: Feedback control architecture, design methodology for service delay guarantees in web servers. IEEE Trans. Parallel Distrib. Syst. 17(9), 1014–1027 (2006)
Patikirikorala, T., Colman, A., Han, J., Wang, L.: A systematic survey on the design of self-adaptive software systems using control engineering approaches. In: SEAMS, pp. 33–42 (2012)
Perez-Palacin, D., Mirandola, R., Merseguer, J.: On the relationships between QoS and software adaptability at the architectural level. SoSyM J. 87, 1–17 (2014)
Petzold, L.R., et al.: A description of DASSL: a differential/algebraic system solver. In: Proceedings of IMACS World Congress, pp. 430–432 (1982)
Rahman, S.F., Guo, J., Yi, Q.: Automated empirical tuning of scientific codes for performance and power consumption. In: HiPEAC, pp. 107–116 (2011)
Zheng, T., Litoiu, M., Woodside, C.M.: Integrated estimation and tracking of performance model parameters with autoregressive trends. In: Kounev, S., Cortellessa, V., Mirandola, R., Lilja, D.J. (eds.) ICPE, pp. 157–166. ACM, New York (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Arcelli, D., Cortellessa, V., Leva, A. (2016). A Library of Modeling Components for Adaptive Queuing Networks. In: Fiems, D., Paolieri, M., Platis, A. (eds) Computer Performance Engineering. EPEW 2016. Lecture Notes in Computer Science(), vol 9951. Springer, Cham. https://doi.org/10.1007/978-3-319-46433-6_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-46433-6_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-46432-9
Online ISBN: 978-3-319-46433-6
eBook Packages: Computer ScienceComputer Science (R0)