Skip to main content
Erschienen in: International Journal of Parallel Programming 1/2018

18.11.2016

Analysing Multiple QoS Attributes in Parallel Design Patterns-Based Applications

verfasst von: Antonio Brogi, Marco Danelutto, Daniele De Sensi, Ahmad Ibrahim, Jacopo Soldani, Massimo Torquati

Erschienen in: International Journal of Parallel Programming | Ausgabe 1/2018

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Parallel design patterns can be fruitfully combined to develop parallel software applications. Different combinations of patterns can feature different QoS while being functionally equivalent. To support application developers in selecting the best combinations of patterns to develop their applications, we hereby propose a probabilistic approach that permits analysing, at design time, multiple QoS attributes of parallel design patterns-based application. We also present a proof-of-concept implementation of our approach, together with some experimental results.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
Probability distributions can typically be derived from a requirement analysis or from monitoring data of previous implementations of an application.
 
2
We employ F# [22] pseudo-code for all snippets in this paper, as our proof-of-concept implementation (Sect. 4) is developed in F#.
 
3
By taking the Max between aTime and bTime, we obtain an optimistic estimation of the completion time for executing A and B in parallel. Notice that different definitions of Both and Delay can be employed if needed. For instance, a pessimistic approach can estimate the completion time for executing both A and B in parallel by summing aTime and bTime.
 
4
For the sake of simplicity, we employ a quite simplistic model for energy that abstracts from any overhead (e.g., idle times) due to concurrent execution of activities.
 
5
For simplicity, when evaluating a farm with n workers, we assume the availability of n processing cores. In this way, we abstract from any delay due to scheduling n workers over \(m<n\) processing cores.
 
6
As we noted in Sect. 3.3.4, we are interested on predicting the QoS based on the distribution of the input types in the input stream, rather than on the “identity” of each input stream item. Hence, it is enough to repeat our analysis on f items (most probably) satisfying such a probability distribution, such as the last f items of the given portion of the input stream.
 
7
The source code of PASA is publicly available at https://​github.​com/​ahmad1245/​PASA.
 
8
The samples are generated with sampling functions following the probability distributions of input types and of Feedback conditions’ satisfaction.
 
9
Such measurements, as well as all the other experiments reported in this section, have been performed on an Intel Xeon Ivy Bridge (running at 2.40 GHz with 12 cores 2-way Hyper-Threading), equipped with a Linux OS (version 3.14.49 x86 64 shipped with CentOS 7.1).
 
10
Such values were obtained by performing 1000 iterations of the Monte Carlo simulation.
 
11
Similar results were achieved when predicting the energy consumption of our application, even with an average relative error higher with respect to that affecting the predicted completion time (due to the extremely simplistic model we employed for estimating energy consumption).
 
Literatur
1.
Zurück zum Zitat Aldinucci, M., Danelutto, M.: Stream parallel skeleton optimization. In: Proceedings of the 12th International Conference on Parallel and Distributed Computing Systems (PDCS 1999), pp. 955–962. International Society for Computers and Their Applications (1999) Aldinucci, M., Danelutto, M.: Stream parallel skeleton optimization. In: Proceedings of the 12th International Conference on Parallel and Distributed Computing Systems (PDCS 1999), pp. 955–962. International Society for Computers and Their Applications (1999)
2.
Zurück zum Zitat Aldinucci, M., Danelutto, M., Kilpatrick, P.: Autonomic management of non-functional concerns in distributed and parallel application programming. In: Proceedings of the IEEE International Symposium on Parallel Distributed Processing (IPDPS 2009), pp. 1–12. IEEE (2009) Aldinucci, M., Danelutto, M., Kilpatrick, P.: Autonomic management of non-functional concerns in distributed and parallel application programming. In: Proceedings of the IEEE International Symposium on Parallel Distributed Processing (IPDPS 2009), pp. 1–12. IEEE (2009)
3.
Zurück zum Zitat Aldinucci, M., Danelutto, M., Kilpatrick, P., Torquati, M.: Fastflow: high-level and efficient streaming on multi-core. In: Pllana, S., Xhafa, F. (eds.) Programming Multi-core and Many-core Computing Systems, Parallel and Distributed Computing. Wiley, Hoboken (2014) Aldinucci, M., Danelutto, M., Kilpatrick, P., Torquati, M.: Fastflow: high-level and efficient streaming on multi-core. In: Pllana, S., Xhafa, F. (eds.) Programming Multi-core and Many-core Computing Systems, Parallel and Distributed Computing. Wiley, Hoboken (2014)
4.
Zurück zum Zitat Aldinucci, M., Gorlatch, S., Lengauer, C., Pelagatti, S.: Towards parallel programming by transformation: the FAN skeleton framework. Parallel Algorithms Appl. 16(2), 87–121 (2001)MathSciNetCrossRefMATH Aldinucci, M., Gorlatch, S., Lengauer, C., Pelagatti, S.: Towards parallel programming by transformation: the FAN skeleton framework. Parallel Algorithms Appl. 16(2), 87–121 (2001)MathSciNetCrossRefMATH
5.
Zurück zum Zitat Bartoloni, L., Brogi, A., Ibrahim, A.: Probabilistic prediction of the QoS of service orchestrations: a truly compositional approach. In: Franch, X., Ghose, A.K., Lewis, G.A., Bhiri, S. (eds.) Proceedings of the 12th International Conference on Service-Oriented Computing (ICSOC 2014), Lecture Notes in Computer Science, vol. 8831, pp. 378–385. Springer (2014) Bartoloni, L., Brogi, A., Ibrahim, A.: Probabilistic prediction of the QoS of service orchestrations: a truly compositional approach. In: Franch, X., Ghose, A.K., Lewis, G.A., Bhiri, S. (eds.) Proceedings of the 12th International Conference on Service-Oriented Computing (ICSOC 2014), Lecture Notes in Computer Science, vol. 8831, pp. 378–385. Springer (2014)
6.
Zurück zum Zitat Benoit, A., Cole, M., Gilmore, S., Hillston, J.: Evaluating the performance of skeleton-based high level parallel programs. In: Computational Science-ICCS 2004, pp. 289–296. Springer (2004) Benoit, A., Cole, M., Gilmore, S., Hillston, J.: Evaluating the performance of skeleton-based high level parallel programs. In: Computational Science-ICCS 2004, pp. 289–296. Springer (2004)
7.
Zurück zum Zitat Caromel, D., Leyton, M.: Fine tuning algorithmic skeletons. In: Proceedings of the 13th International Euro-Par Conference on Parallel Processing (Euro-Par 2007), pp. 72–81. Springer (2007) Caromel, D., Leyton, M.: Fine tuning algorithmic skeletons. In: Proceedings of the 13th International Euro-Par Conference on Parallel Processing (Euro-Par 2007), pp. 72–81. Springer (2007)
8.
Zurück zum Zitat Castro, D., Hammond, K., Brady, E., Sarkar, S.: Structure, semantics and speedup: reasoning about structured parallel programs using dependent types. Under Consideration for Publication in J, Functional Programming (2015) Castro, D., Hammond, K., Brady, E., Sarkar, S.: Structure, semantics and speedup: reasoning about structured parallel programs using dependent types. Under Consideration for Publication in J, Functional Programming (2015)
9.
Zurück zum Zitat Danelutto, M., De Sensi, D., Torquati, M.: Energy driven adaptivity in stream parallel computations. In: Proceedings of the 23rd Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP 2015), pp. 103–110. IEEE (2015) Danelutto, M., De Sensi, D., Torquati, M.: Energy driven adaptivity in stream parallel computations. In: Proceedings of the 23rd Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP 2015), pp. 103–110. IEEE (2015)
10.
Zurück zum Zitat De Sensi, D.: Predicting performance and power consumption of parallel applications. In: Proceedings of the 24th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP 2016), pp. 200–207. IEEE Computer Society (2016) De Sensi, D.: Predicting performance and power consumption of parallel applications. In: Proceedings of the 24th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP 2016), pp. 200–207. IEEE Computer Society (2016)
11.
Zurück zum Zitat Dunn, W.L., Shultis, J.K.: Exploring Monte Carlo Methods. Elsevier, Amsterdam (2011)MATH Dunn, W.L., Shultis, J.K.: Exploring Monte Carlo Methods. Elsevier, Amsterdam (2011)MATH
12.
Zurück zum Zitat Emoto, K., Matsuzaki, K., Hu, Z., Takeichi, M.: Domain-specific optimization strategy for skeleton programs. In: Euro-Par 2007 Parallel Processing, pp. 705–714. Springer (2007) Emoto, K., Matsuzaki, K., Hu, Z., Takeichi, M.: Domain-specific optimization strategy for skeleton programs. In: Euro-Par 2007 Parallel Processing, pp. 705–714. Springer (2007)
13.
Zurück zum Zitat Gorlatch, S., Lengauer, C.: (De)Composition rules for parallel scan and reduction. In: Proceedings of the 3rd Working Conference on Massively Parallel Programming Models (MPPM 1997), pp. 23–32. IEEE (1997) Gorlatch, S., Lengauer, C.: (De)Composition rules for parallel scan and reduction. In: Proceedings of the 3rd Working Conference on Massively Parallel Programming Models (MPPM 1997), pp. 23–32. IEEE (1997)
14.
Zurück zum Zitat Hähnel, M., Döbel, B., Völp, M., Härtig, H.: Measuring energy consumption for short code paths using RAPL. SIGMETRICS Perform. Eval. Rev. 40(3), 13–17 (2012)CrossRef Hähnel, M., Döbel, B., Völp, M., Härtig, H.: Measuring energy consumption for short code paths using RAPL. SIGMETRICS Perform. Eval. Rev. 40(3), 13–17 (2012)CrossRef
15.
Zurück zum Zitat Hayashi, Y., Cole, M.: Static performance prediction of skeletal parallel programs. Parallel Algorithms Appl. 17(1), 59–84 (2002)CrossRefMATH Hayashi, Y., Cole, M.: Static performance prediction of skeletal parallel programs. Parallel Algorithms Appl. 17(1), 59–84 (2002)CrossRefMATH
16.
Zurück zum Zitat Hillston, J.: A Compositional Approach to Performance Modelling, vol. 12. Cambridge University Press, Cambridge (2005)MATH Hillston, J.: A Compositional Approach to Performance Modelling, vol. 12. Cambridge University Press, Cambridge (2005)MATH
17.
Zurück zum Zitat Huebscher, M.C., McCann, J.A.: A survey of autonomic computing—degrees, models, and applications. ACM Comput. Surv. 40(3), 7:1–7:28 (2008)CrossRef Huebscher, M.C., McCann, J.A.: A survey of autonomic computing—degrees, models, and applications. ACM Comput. Surv. 40(3), 7:1–7:28 (2008)CrossRef
19.
Zurück zum Zitat Kandasamy, N., Abdelwahed, S., Khandekar, M.: A hierarchical optimization framework for autonomic performance management of distributed computing systems. In: Proceedings of the 26th International Conference on Distributed Computing Systems (ICDCS 2006), p. 9. IEEE (2006) Kandasamy, N., Abdelwahed, S., Khandekar, M.: A hierarchical optimization framework for autonomic performance management of distributed computing systems. In: Proceedings of the 26th International Conference on Distributed Computing Systems (ICDCS 2006), p. 9. IEEE (2006)
20.
Zurück zum Zitat Khargharia, B., Hariri, S., Yousif, M.S.: Autonomic power and performance management for computing systems. In: Proceedings of the 3rd International Conference on Autonomic Computing, pp. 145–154. IEEE (2006) Khargharia, B., Hariri, S., Yousif, M.S.: Autonomic power and performance management for computing systems. In: Proceedings of the 3rd International Conference on Autonomic Computing, pp. 145–154. IEEE (2006)
21.
Zurück zum Zitat Rabhi, F.A., Gorlatch, S. (eds.): Patterns and Skeletons for Parallel and Distributed Computing. Springer, London (2003)MATH Rabhi, F.A., Gorlatch, S. (eds.): Patterns and Skeletons for Parallel and Distributed Computing. Springer, London (2003)MATH
22.
Zurück zum Zitat Syme, D., Granicz, A., Cisternino, A.: Expert F# 4.0, 4th edn. Apress, New York City (2015)CrossRef Syme, D., Granicz, A., Cisternino, A.: Expert F# 4.0, 4th edn. Apress, New York City (2015)CrossRef
Metadaten
Titel
Analysing Multiple QoS Attributes in Parallel Design Patterns-Based Applications
verfasst von
Antonio Brogi
Marco Danelutto
Daniele De Sensi
Ahmad Ibrahim
Jacopo Soldani
Massimo Torquati
Publikationsdatum
18.11.2016
Verlag
Springer US
Erschienen in
International Journal of Parallel Programming / Ausgabe 1/2018
Print ISSN: 0885-7458
Elektronische ISSN: 1573-7640
DOI
https://doi.org/10.1007/s10766-016-0476-8

Weitere Artikel der Ausgabe 1/2018

International Journal of Parallel Programming 1/2018 Zur Ausgabe