High-Level Parallel Programming with Parallel Skeletons in Haskell
Title: High-Level Parallel Programming with Parallel Skeletons in Haskell
Speaker: Jost Berthold (University of Copenhagen)
Time: 14:00, Thursday, 16 May, 2013.
Venue: Lecture Room, 3rd Floor, Building #5, State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences
With the advent of multicore and GPGPUs, parallel programming has undergone a veritable renaissance. Today, it is virtually impossible to buy a desktop or laptop computer with only one core. At the same time, new scientific methods increasingly rely on parallel processing to realise their computational demand.
However, identifying, allocating and controlling parallelism in massively parallel hardware is challenging, and programmers need to “think parallel” from the start in order to effectively exploit modern multicore/manycore architectures. Functional languages – such as Haskell with parallelism extensions – provide a suitable abstraction level to reason about parallel programs without getting lost in implementation details.
This research talk will discuss common parallelisation patterns, captured as “parallel skeletons”, and present implementations in the parallel Haskell dialect Eden. We argue that the functional programming paradigm is a very good match to the requirement of “parallel thinking”, and that parallel Haskell provides good support for both skeleton usage and lower-level implementation. The functional paradigm enables to analyse and design applications for parallel computing from the start, and programming profits from a rich type system and libraries to express algorithms in a mathematical way.
Dr. Jost Berthold is Assistant Professor at DIKU, the Department of Computer Science at the University of Copenhagen. He holds a doctorate degree from the University of Marburg in 2008, working on concepts and implementation of parallel Haskells, in particular the language Eden. His research interests cover the entire spectrum of parallel functional programming: programming concepts and parallelisation patterns, language constructs, and questions related to their implementation and pragmatics; he has published more than 25 scientific publications in the field since 2002. After post-doctoral positions at Microsoft Research Cambridge, in St.Andrews and at DIKU, Dr. Berthold now works at the core of the HIPERFIT research centre which applies advanced programming languages and parallel functional programming to problems from financial mathematics.