Tapir: Embedding fork-join parallelism into LLVM's intermediate representation

TB Schardl, WS Moses, CE Leiserson - Proceedings of the 22nd ACM …, 2017‏ - dl.acm.org
This paper explores how fork-join parallelism, as supported by concurrency platforms such
as Cilk and OpenMP, can be embedded into a compiler's intermediate representation (IR) …

Disentanglement in nested-parallel programs

S Westrick, R Yadav, M Fluet, UA Acar - Proceedings of the ACM on …, 2019‏ - dl.acm.org
Nested parallelism has proved to be a popular approach for programming the rapidly
expanding range of multicore computers. It allows programmers to express parallelism at a …

Entanglement detection with near-zero cost

S Westrick, J Arora, UA Acar - Proceedings of the ACM on Programming …, 2022‏ - dl.acm.org
Recent research on parallel functional programming has culminated in a provably efficient
(in work and space) parallel memory manager, which has been incorporated into the MPL …

Tapir: Embedding recursive fork-join parallelism into llvm's intermediate representation

TB Schardl, WS Moses, CE Leiserson - ACM Transactions on Parallel …, 2019‏ - dl.acm.org
Tapir (pronounced TAY-per) is a compiler intermediate representation (IR) that embeds
recursive fork-join parallelism, as supported by task-parallel programming platforms such as …

Provably space-efficient parallel functional programming

J Arora, S Westrick, UA Acar - Proceedings of the ACM on Programming …, 2021‏ - dl.acm.org
Because of its many desirable properties, such as its ability to control effects and thus
potentially disastrous race conditions, functional programming offers a viable approach to …

Opencilk: A modular and extensible software infrastructure for fast task-parallel code

TB Schardl, ITA Lee - Proceedings of the 28th ACM SIGPLAN Annual …, 2023‏ - dl.acm.org
This paper presents OpenCilk, an open-source software infrastructure for task-parallel
programming that allows for substantial code reuse and easy exploration of design choices …

Brief announcement: Open cilk

TB Schardl, ITA Lee, CE Leiserson - … of the 30th on Symposium on …, 2018‏ - dl.acm.org
Open Cilk is a new open-source platform to support Cilk multithreaded programming,
especially for researchers and teachers. Open Cilk aims to provide a full-featured …

Warden: Specializing cache coherence for high-level parallel languages

M Wilkins, S Westrick, V Kandiah, A Bernat… - Proceedings of the 21st …, 2023‏ - dl.acm.org
High-level parallel languages (HLPLs) make it easier to write correct parallel programs.
Disciplined memory usage in these languages enables new optimizations for hardware …

Automatic parallelism management

S Westrick, M Fluet, M Rainey, UA Acar - Proceedings of the ACM on …, 2024‏ - dl.acm.org
On any modern computer architecture today, parallelism comes with a modest cost, born
from the creation and management of threads or tasks. Today, programmers battle this cost …

Responsive parallelism with futures and state

SK Muller, K Singer, N Goldstein, UA Acar… - Proceedings of the 41st …, 2020‏ - dl.acm.org
Motivated by the increasing shift to multicore computers, recent work has developed
language support for responsive parallel applications that mix compute-intensive tasks with …