G. Zumbusch (University Jena)

A functional approach to programming heterogeneus systems

Programming styles and language (extensions) for heterogeneus systems are reviewed such as message-passing, threads, array languages, Cuda, OpenCL and vector instructions. An example of a pure functional language is presented, which offers lots of parallelism and is easy to analyse. A compilation process is described, which translates the functional code through a parallel array language to an abstract model of heterogeneus systems and finally to some target architectures. A parallel compiler with different back ends is presented.