Exploring energy-performance-quality tradeoffs for scientific workflows with in-situ data analyses

  • Georgiana Haldeman
  • Ivan Rodero
  • Manish Parashar
  • Sabela Ramos
  • Eddy Z. Zhang
  • Ulrich Kremer
Special Issue Paper

Abstract

Power and energy are critical concerns for high performance computing systems from multiple perspectives, including cost, reliability/resilience and sustainability. At the same time, data locality and the cost of data movement have become dominating concerns in scientific workflows. One potential solution for reducing data movement costs is to use a data analysis pipeline based on in-situ data analysis.However, the energy-performance-quality tradeoffs impact of current optimizations and their overheads can be very hard to assess and understand at the application level.In this paper, we focus on exploring performance and power/energy tradeoffs of different data movement strategies and how to balance these tradeoffs with quality of solution and data speculation. Our experimental evaluation provides an empirical evaluation of different system and application configurations that give insights into the energy-performance-quality tradeoffs space for in-situ data-intensive application workflows. The key contribution of this work is a better understanding of the interactions between different computation, data movement, energy, and quality-of-result optimizations from a power-performance perspective, and a basis for modeling and exploiting these interactions.

Keywords

Power/performance tradeoffs In-situ data analysis  Data staging Data speculation 

Notes

Acknowledgments

The research presented in this work is supported in part by U.S. National Science Foundation (NSF) via grants numbers OCI-1339036, OCI-1310283 and CNS-1305375, and by the Director, Office of Advanced Scientific Computing Research, Office of Science, of the US Department of Energy through the ExaCT Combustion Co-Design Center via subcontract number 4000110839 from UT Battelle. The research was conducted as part of the NSF Cloud and Autonomic Computing (CAC) Center at Rutgers University and the Rutgers Discovery Informatics Institute (RDI2) and partially supported by a Rutgers Research Council Grant. The research presented in this paper is also supported by the Galician Government (Projects CN2012/211 and GRC2013/055) and partially supported by FEDER funds of the European Union. We also thank the anonymous reviewers for their comments and recommendations, which helped to considerably improve the quality of the manuscript.

References

  1. 1.
    Andersen DG, Franklin J, Kaminsky M, Phanishayee A, Tan L, Vasudevan V (2009) Fawn: a fast array of wimpy nodes. In: SIGOPS symposium on operating systems principles, pp 1–14Google Scholar
  2. 2.
    Avron H, Gupta A (2012) Managing data-movement for effective shared-memory parallelization of out-of-core sparse solvers. In: 2012 International conference for high performance computing, networking, storage and analysis (SC), pp 1–11Google Scholar
  3. 3.
    Balakrishnan S, Sohi GS (2006) Program demultiplexing: data-flow based speculative parallelization of methods in sequential programs. In: Proceedings of the 33rd annual international symposium on computer architecture, ISCA ’06, pp 302–313Google Scholar
  4. 4.
    Baskaran MM, Bondhugula U, Krishnamoorthy S, Ramanujam J, Rountev A, Sadayappan P (2008) Automatic data movement and computation mapping for multi-level parallel architectures with explicitly managed memories. In: Proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming, PPoPP ’08, pp 1–10Google Scholar
  5. 5.
    Bennett JC, Abbasi H, Bremer PT, Grout R et al (2012) Combining in-situ and in-transit processing to enable extreme-scale scientific analysis. In: International conference on high performance computing, networking, storage and analysis (SC), pp 49:1–49:9Google Scholar
  6. 6.
    Caulfield AM, Grupp LM, Swanson S (2009). Gordon: using flash memory to build fast, power-efficient clusters for data-intensive applications. In: International conference on architectural support for programming languages and operating systems, pp 217–228Google Scholar
  7. 7.
    Chen JH, Choudhary A, de Supinski B, DeVries M et al (2009) Terascale direct numerical simulations of turbulent combustion using s3d. Comput Sci Discov 2:1–31CrossRefGoogle Scholar
  8. 8.
    Cockcroft AN (2007) Millicomputing: the coolest computers and the flashiest storage. In: International computer measurement group conference, pp 407–414Google Scholar
  9. 9.
    Dathathri R, Reddy C, Ramashekar T, Bondhugula U (2013) Generating efficient data movement code for heterogeneous architectures with distributed-memory. In: 2013 22nd International Conference on parallel architectures and compilation techniques (PACT), pp 375–386Google Scholar
  10. 10.
    Diamos G, Yalamanchili S (2010) Speculative execution on multi-GPU systems. In: 2010 IEEE international symposium on parallel distributed processing (IPDPS), pp 1–12Google Scholar
  11. 11.
    Dong X, Wu X, Xie Y, Chen Y, Li H (2011) Stacking MRAM atop microprocessors: an architecture-level evaluation. IET Comput Digit Tech 5(3):213–220CrossRefGoogle Scholar
  12. 12.
    Donofrio D, Oliker L, Shalf J, Wehner MF, Rowen C, Krueger J, Kamil S, Mohiyuddin M (2009) Energy-efficient computing for extreme-scale science. Computer 42(11):62–71CrossRefGoogle Scholar
  13. 13.
    Durillo J, Nae V, Prodan R (2013) Multi-objective workflow scheduling: an analysis of the energy efficiency and makespan tradeoff. In: 2013 13th IEEE/ACM international symposium on cluster, cloud and grid computing (CCGrid), pp 203–210Google Scholar
  14. 14.
    Gamell M, Rodero I, Parashar M, Bennett J et al (2013) Exploring power behaviors and tradeoffs of in-situ data analytics. In: International conference on high performance computing networking, storage and analysis (SC). Denver, CO, pp 1–12Google Scholar
  15. 15.
    Gamell M, Rodero I, Parashar M, Poole S (2013) Exploring energy and performance behaviors of data-intensive scientific workflows on systems with deep memory hierarchies. In: Proceedings of the 20th international conference on high performance computing (HiPC), pp 1–10Google Scholar
  16. 16.
    Hammond L, Willey M, Olukotun K (1998) Data speculation support for a chip multiprocessor. In: Proceedings of the eighth international conference on architectural support for programming languages and operating systems, ASPLOS VIII, pp 58–69Google Scholar
  17. 17.
    Kestor G, Gioiosa R, Kerbyson D, Hoisie A (2013) Quantifying the energy cost of data movement in scientific applications. In: 2013 IEEE international symposium on workload characterization (IISWC), pp 56–65Google Scholar
  18. 18.
    Krueger J, Donofrio D, Shalf J, Mohiyuddin M, Williams S, Oliker L, Pfreund FJ (2011) Hardware/software co-design for energy-efficient seismic modeling. In: Proceedings of 2011 international conference for high performance computing, networking, storage and analysis (SC’11), pp 73:1–73:12Google Scholar
  19. 19.
    Li D, De Supinski B, Schulz M, Cameron K, Nikolopoulos D (2010) Hybrid MPI/openMP power-aware computing. In: 2010 IEEE International Symposium on parallel distributed processing (IPDPS), pp 1–12Google Scholar
  20. 20.
    Li D, Nikolopoulos D, Cameron K, De Supinski B, Schulz M (2010) Power-aware MPI task aggregation prediction for high-end computing systems. In: 2010 IEEE international symposium on parallel distributed processing (IPDPS), pp 1–12Google Scholar
  21. 21.
    Li D, Vetter JS, Marin G, McCurdy C, Cira C, Liu Z, Yu W (2012) Identifying opportunities for byte-addressable non-volatile memory in extreme-scale scientific applications. In: International parallel and distributed processing symposium, pp 945–956Google Scholar
  22. 22.
    Lim K, Ranganathan P, Chang J, Patel C, Mudge T, Reinhardt S (2008) Understanding and designing new server architectures for emerging warehouse-computing environments. In: Annual international symposium on computer architecture, pp 315–326Google Scholar
  23. 23.
    Lively C, Wu X, Taylor V, Moore S, Chang HC, Cameron K (2011) Energy and performance characteristics of different parallel implementations of scientific applications on multicore systems. Int J High Perform Comput Appl 25(3):342–350CrossRefGoogle Scholar
  24. 24.
    Nightingale EB, Chen PM, Flinn J (2006) Speculative execution in a distributed file system. ACM Trans Comput Syst 24(4):361–392CrossRefGoogle Scholar
  25. 25.
    Perrone M, Liu LK, Lu L, Magerlein K, Kim C, Fedulova I, Semenikhin A (2012) Reducing data movement costs: scalable seismic imaging on blue gene. In: 2012 IEEE 26th international parallel distributed processing symposium (IPDPS), pp 320–329Google Scholar
  26. 26.
    Rivoire S, Shah MA, Ranganathan P, Kozyrakis C (2007) Joulesort: a balanced energy-efficiency benchmark. In: SIGMOD international conference on management of data, pp 365–376Google Scholar
  27. 27.
    Rodero I, Chandra S, Parashar M, Muralidhar R, Seshadri H, Poole S (2010) Investigating the potential of application-centric aggressive power management for HPC workloads. In: Proceedings of the IEEE international conference on high performance computing (HiPC). Goa, India, pp 1–10Google Scholar
  28. 28.
    Rountree B, Lownenthal DK, de Supinski BR, Schulz M, Freeh VW, Bletsch T (2009) Adagio: making DVS practical for complex hpc applications. In: International conference on supercomputing, pp 460–469Google Scholar
  29. 29.
    Tian C, Feng M, Nagarajan V, Gupta R (2008) Copy or discard execution model for speculative parallelization on multicores. In: Proceedings of the 41st annual IEEE/ACM international symposium on microarchitecture, MICRO 41, pp 330–341Google Scholar
  30. 30.
    Yan Y, Zhao J, Guo Y, Sarkar V (2010) Hierarchical place trees: a portable abstraction for task parallelism and data movement. In: Proceedings of the 22nd international conference on languages and compilers for parallel computing. LCPC’09. Springer, Berlin, pp 172–187Google Scholar
  31. 31.
    Yoon DH, Gonzalez T, Ranganathan P, Schreiber RS (2012) Exploring latency-power tradeoffs in deep nonvolatile memory hierarchies. In: Conference on computing frontiers, pp 95–102Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Georgiana Haldeman
    • 1
  • Ivan Rodero
    • 1
  • Manish Parashar
    • 1
  • Sabela Ramos
    • 2
  • Eddy Z. Zhang
    • 3
  • Ulrich Kremer
    • 3
  1. 1.Rutgers Discovery Informatics Institute and NSF Cloud and Autonomic Computing (CAC) CenterRutgers UniversityPiscatawayUSA
  2. 2.Computer Architecture GroupUniversity of A CoruñaA CoruñaSpain
  3. 3.Department of Computer ScienceRutgers UniversityPiscatawayUSA

Personalised recommendations