Co-design of Distributed Systems Using Skeleton and Autonomic Management Abstractions

We discuss how common problems arising with multi/many-core distributed architectures can be effectively handled through co-design of parallel/distributed programming abstractions and of autonomic management of non-functional concerns. In particular, we demonstrate how restricted parallel/distributed patterns (or skeletons) may be efficiently managed by rule-based autonomic managers. We discuss the basic principles underlying pattern+manager co-design, current implementations inspired by this approach and some results achieved with a proof-of-concept prototype.

[1]  Marco Danelutto,et al.  ASSIST As a Research Framework for High-Performance Grid Programming Environments , 2006, Grid Computing: Software Environments and Tools.

[2]  Denis Caromel,et al.  Fine Tuning Algorithmic Skeletons , 2007, Euro-Par.

[3]  José C. Cunha,et al.  Grid Computing: Software Environments and Tools , 2005 .

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

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

[6]  Marco Danelutto,et al.  An advanced environment supporting structured parallel programming in Java , 2003, Future Gener. Comput. Syst..

[7]  Herbert Kuchen,et al.  A Skeleton Library , 2002, Euro-Par.

[8]  Marco Danelutto,et al.  Behavioural Skeletons Meeting Services , 2008, ICCS.

[9]  Peter Kilpatrick,et al.  Behavioural Skeletons in GCM: Autonomic Management of Grid Components , 2008, 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008).

[10]  Salvatore Orlando,et al.  P3 L: A structured high-level parallel language, and its structured support , 1995, Concurr. Pract. Exp..

[11]  Marco Danelutto QoS in parallel programming through application managers , 2005, 13th Euromicro Conference on Parallel, Distributed and Network-Based Processing.

[12]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[13]  Timothy G. Mattson,et al.  Patterns for parallel programming , 2004 .