What We Do
The text below summarises some of our main activities.
High-level Parallel Programming for Networks of Multi-cores
- We use high-level programming languages to simplify the task of developing parallel programs.
- We build on models of semi-explicit parallelism, only requiring the identification of parallelism.
- We develop runtime-environments for automatic, dynamic, architecture-transparent management of the identified parallelism.
- We verify correctness of parallel programs based on a rigorous, semantic specification of parallel execution.
- We apply our systems on large-scale, symbolic applications for high-performance computational mathematics.
- We execute our applications on a wide range of parallel hardware.