WG211/M14Fischer

From WG 2.11
Jump to: navigation, search

Code generation for distributed applications by Bernd Fischer, joint work with Tristan Aubrey-Jones

Distributed memory architectures such as Linux clusters have become common but remain difficult to program manually. We have previously shown how to automatically generate generate data distribution strategies for programs written in a functional core language. We formalized the different data layouts of distributed arrays, maps, and lists as types, which we then used to search (via type inference) for efficient data distribution plans and subsequently to generate the MPI implementations.

Here we present several extensions to this work:

  • generation of efficient MPI implementations in C++
  • performance-feedback-based data distribution search
  • automatic redistribution insertion
  • extensions to the type system, such as local data layouts and arrays with ghosting