Principles of Parallel Computing

Overview

The goal  is to enable efficient and parallelism on shared memory systems.  Current work includes the development of abstractions, algorithms, and language systems based on C++ and Standard ML.  Specific projects include:

  • The Steel Project: this project aims to develop a high performance parallel functional language.  
  • The Paris Project: this project aims to bring together many different approaches to parallelism by developing a unified theory.

  • Responsive Parallelism Project: this project aims to develop a model of computing that combines elements of concurrency (competitive threading) and parallelism (collaborative threading) under the same roof.  

Publications

See our publications.

People

Funding

This project is funded by grants from NSF, EU-ERC, and Microsoft Research.