A Green Perspective on Structured Parallel Programming

Structured parallel programming, and in particular programming models using the algorithmic skeleton or parallel design pattern concepts, are increasingly considered to be the only viable means of supporting effective development of scalable and efficient parallel programs. Structured parallel programming models have been assessed in a number of works in the context of performance. In this paper we consider how the use of structured parallel programming models allows knowledge of the parallel patterns present to be harnessed to address both performance and energy consumption. We consider different features of structured parallel programming that may be leveraged to impact the performance/energy trade-off and we discuss a preliminary set of experiments validating our claims.

[1]  Lori L. Pollock,et al.  Initial explorations on design pattern energy usage , 2012, 2012 First International Workshop on Green and Sustainable Software (GREENS).

[2]  Helen D. Karatza,et al.  Performance and energy aware cluster-level scheduling of compute-intensive jobs with unknown service times , 2011, Simul. Model. Pract. Theory.

[3]  Murray Cole,et al.  Bringing skeletons out of the closet: a pragmatic manifesto for skeletal parallel programming , 2004, Parallel Comput..

[4]  Peter Kilpatrick,et al.  Accelerating Code on Multi-cores with FastFlow , 2011, Euro-Par.

[5]  Jocelyn Sérot,et al.  Skeletons for parallel image processing: an overview of the SKIPPER project , 2002, Parallel Comput..

[6]  Christian Bunse,et al.  On the Energy Consumption of Design Patterns , 2013, Softwaretechnik-Trends.

[7]  Zheng Li,et al.  Skeletal Parallel Programming with OCamlP3l 2.0 , 2005, Parallel Process. Lett..

[8]  Peter Kilpatrick,et al.  Autonomic scheduling of tasks from data parallel patterns to CPU/GPU core mixes , 2013, 2013 International Conference on High Performance Computing & Simulation (HPCS).

[9]  Albert Y. Zomaya,et al.  Some observations on optimal frequency selection in DVFS-based energy consumption minimization , 2011, J. Parallel Distributed Comput..

[10]  Henri Casanova,et al.  Energy-aware service allocation , 2012, Future Gener. Comput. Syst..

[11]  Massimo Torquati,et al.  Efficient Smith-Waterman on Multi-core with FastFlow , 2010, 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing.

[12]  Mateo Valero,et al.  Understanding the future of energy-performance trade-off via DVFS in HPC environments , 2012, J. Parallel Distributed Comput..

[13]  Herbert Kuchen,et al.  The Münster Skeleton Library Muesli: A comprehensive overview , 2009 .

[14]  Horacio González-Vélez,et al.  A survey of algorithmic skeleton frameworks: high‐level structured parallel programming enablers , 2010, Softw. Pract. Exp..

[15]  Marcin Paprzycki Structured development of parallel programs , 1999, IEEE Concurr..

[16]  Emilio Luque,et al.  Impact of parallel programming models and CPUs clock frequency on energy consumption of HPC systems , 2011, 2011 9th IEEE/ACS International Conference on Computer Systems and Applications (AICCSA).

[17]  Thomas Hérault,et al.  Flexible Development of Dense Linear Algebra Algorithms on Massively Parallel Architectures with DPLASMA , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[18]  Rajkumar Buyya,et al.  Energy-aware resource allocation heuristics for efficient management of data centers for Cloud computing , 2012, Future Gener. Comput. Syst..

[19]  Peter Kilpatrick,et al.  Targeting Heterogeneous Architectures via Macro Data Flow , 2012, Parallel Process. Lett..

[20]  Stefano Chessa,et al.  Engineering Energy Efficient Visual Sensor Network Applications Using Skeletons , 2013, International Journal of Parallel Programming.

[21]  Hai Jin,et al.  Performance–energy adaptation of parallel programs in pervasive computing , 2014, The Journal of Supercomputing.

[22]  Zhenjiang Hu,et al.  A library of constructive skeletons for sequential style of parallel programming , 2006, InfoScale '06.

[23]  Marco Danelutto Efficient Support for Skeletons on Workstation Clusters , 2001, Parallel Process. Lett..

[24]  Mitsuhisa Sato,et al.  Emprical study on Reducing Energy of Parallel Programs using Slack Reclamation by DVFS in a Power-scalable High Performance Cluster , 2006, 2006 IEEE International Conference on Cluster Computing.

[25]  Horacio González-Vélez,et al.  Heterogeneous Algorithmic Skeletons for Fast Flow with Seamless Coordination over Hybrid Architectures , 2013, 2013 21st Euromicro International Conference on Parallel, Distributed, and Network-Based Processing.