Weighing Continuations for Concurrency


There have been a number of efforts to broaden the use of lightweight continuations for concurrency in programming languages, however, the implementation trade-offs of various designs under sequential and concurrent workloads are not well understood. Prior empirical evaluations used cross-language and cross-compiler analyses, leaving much of the folklore surrounding their performance without evidence. We present the implementation of a single compiler and runtime system that supports a broad range of strategies for continuations. Using this compiler, we conduct an empirical analysis of both the performance and challenges involved in implementing different forms of continuations for high-performance concurrency.

Master's Thesis, University of Chicago