Title: Assessing Modern Parallel Programming Languages
Proposer: Hans-Wolfgang Loidl
Suggested supervisors: Hans-Wolfgang Loidl
Goal: Compare modern parallel languages in terms of programmer productivity and performance.
A new generation of parallel programming languages, such as Fortress, X10 and Chapel, brings several advanced programming language features to the mainstream of parallel programming. Building on an object-oriented programming model, they provide a high level of abstraction, reducing the programming effort required to develop a parallel application.
The aim of this project is to compare the languages Fortress, X10 and Chapel, by implementing symbolic applications, such as sparse matrix multiplication, in each of these languages, and assessing the performance on (clusters of) multi-core machines. Main criteria for the evaluation are the raw performance of the parallel program, its scalability, as well as the ease of implementation and maintainability of the code.
Resources required: Linux, Beowulf cluster, Compilers for Fortress, X10 and Chapel
Degree of difficulty: Moderate
Background needed: Basic parallel programming background