Efficient Tree-Traversals: Reconciling Parallelism and Dense Data Representations
Recent work showed that compiling functional programs to use dense, serialized memory representations for recursive algebraic datatypes can yield significant constant-factor speedups for sequential programs. But serializing data in a maximally dense format consequently serializes the processing of that data, yielding a tension between density and parallelism. This paper shows that a disciplined, practical compromise is possible. We present Parallel Gibbon, a compiler that obtains the benefits of dense data formats and parallelism. We formalize the semantics of the parallel location calculus underpinning this novel implementation strategy, and show that it is type-safe. Parallel Gibbon exceeds the parallel performance of existing compilers for purely functional programs that use recursive algebraic datatypes, including, notably, abstract-syntax-tree traversals as in compilers.
Thu 21 OctDisplayed time zone: Central Time (US & Canada) change
15:40 - 17:00 | |||
15:40 15mTalk | An Order-Aware Dataflow Model for Parallel Unix Pipelines SIGPLAN Papers Shivam Handa Massachusetts Institute of Technology, Konstantinos Kallas University of Pennsylvania, Nikos Vasilakis Massachusetts Institute of Technology, Martin C. Rinard Massachusetts Institute of Technology DOI | ||
15:55 15mTalk | Compositional Optimizations for CertiCoq SIGPLAN Papers Zoe Paraskevopoulou Northeastern University, John M. Li Princeton University, Andrew W. Appel Princeton DOI | ||
16:10 15mTalk | Efficient Tree-Traversals: Reconciling Parallelism and Dense Data Representations SIGPLAN Papers Chaitanya S. Koparkar Indiana University, Mike Rainey Carnegie Mellon University, Michael Vollmer University of Kent, Milind Kulkarni Purdue University, Ryan R. Newton Facebook DOI | ||
16:25 15mTalk | Reasoning about the Garden of Forking Paths SIGPLAN Papers Yao Li University of Pennsylvania, Li-yao Xia University of Pennsylvania, Stephanie Weirich University of Pennsylvania DOI | ||
16:40 20mLive Q&A | Discussion, Questions and Answers SIGPLAN Papers |