Computational Science applications are getting more and more complex to develop and require more and more computing power. Parallel and grid computing provide solutions to this increasing need for computing power. High level languages offer a high degree of abstraction which eases the development of complex systems. By basing them on formal semantics, it even becomes possible to certify the correctness of critical parts of the application. Algorithmic skeletons, parallel extensions of functional languages such as Haskell and ML, as well as parallel logic and constraint programming or parallel execution of declarative programs such as SQL queries, etc. have all produced methods and tools to improve the price/performance ratio of parallel software, and broaden the range of target applications.
This special issue of Scalable Computing: Practice and Experience presents recent work of researchers in these fields. These articles are a selection of extended and revised versions of papers presented at the second international workshop on Practical Aspects of High-Level Parallel Programming (PAPP), affiliated to the International Conference on Computational Science (ICCS 2005). The PAPP workshops focus on practical aspects of high-level parallel programming: design, implementation and optimization of high-level programming languages and tools (performance predictors working on high-level parallel/grid source code, visualisation of abstract behaviour, automatic hotspot detectors, high-level GRID resource managers, compilers, automatic generators, etc.), applications in all fields of computational science, benchmarks and experiments. The PAPP workshops are aimed both at researchers involved in the development of high level approaches to parallel and grid computing and at computational science researchers who are potential users of these languages and tools. One concern in the development of parallel programs is the prediction of their performance from the source code. This is valuable to enable for their optimization, or to fit the resources needed by the program into the resources offered by the architecture. In their paper, Empirical Parallel Performance Prediction from Semantics-Based Profiling, Norman Scaife, Greg Michaelson and Susumu Horiguchi propose a hybrid approach by combining static analytic cost models for algorithmic skeletons with dynamic information gathered from the sequential instrumentation of higher-order functions.
If high-performance computing is mainly concerned with processing ressources, solving large problems also raises memory ressources issues. Dynamic Memory Management in the Loci Framework by Yang Zhang and Edward A. Luke provides a solution for the Loci declarative high-performance data-parallel programming system. Grid systems offer a tremendous computing power. Nevertheless, this power is far from being effectively exploited. In addition to technical problems related to portability and access, grid computing needs suited programming paradigms. A. D. Al Zain et al. present in Managing Heterogeneity in a Grid Parallel Haskell, GridGUM an initial port of the distributed virtual shared-memory implementation of Glasgow Parallel Haskell for computational grids.
I would like to thank all the people who made the PAPP workshop possible: the organizers of the ICCS conference, the other members of the programme committee: Marco Aldinucci (CNR/Univ. of Pisa, Italy), Rob Bisseling (Univ. of Utrecht, The Netherlands), Frank Dehne (Griffith Univ., Australia), Alexandros Gerbessiotis (NJIT, USA), Stephen Gilmore (Univ. of Edinburgh, UK), Clemens Grelck (Univ. of Luebeck, Germany), Sergei Gorlatch (Univ. of Muenster, Germany), Isabelle Guérin-Lassous (INRIA, France), Zhenjiang Hu (Univ. of Tokyo, Japan), Fethi A. Rabhi (Univ. of New South Wales, Australia), Casiano Rodríguez León (Univ. La Laguna, Spain). I also thank the other referees for their efficient help. Finally I thank all authors who submitted papers for their interest in the workshop, the quality and variety of the research topics they proposed.
University of Orléans
rue Léonard de Vinci
B. P. 6759 F-45067
Orleans Cedex 2