Task Parallel Assembly Language for Uncompromising Parallelism
Thu 24 Jun 2021 01:55 - 02:00 at PLDI-B - Talks 2B: Language Design and Programming Models
Achieving parallel performance and scalability involves making compromises between parallel and sequential computation. If not contained, the overheads of parallelism can easily outweigh its benefits, sometimes by orders of magnitude. Today, we expect programmers to implement this compromise by optimizing their code manually. This process is labor intensive, requires deep expertise, and reduces code quality. Recent work on heartbeat scheduling shows a promising approach that manifests the potentially vast amounts of available, latent parallelism, at a regular rate, based on even beats in time. The idea is to amortize the overheads of parallelism over the useful work performed between the beats. Heartbeat scheduling is promising in theory, but the reality is complicated: it has no known practical implementation.
In this paper, we propose a practical approach to heartbeat scheduling that involves equipping the assembly language with a small set of primitives. These primitives leverage existing kernel and hardware support for interrupts to allow parallelism to remain latent, until a heartbeat, when it can be manifested with low cost. Our Task Parallel Assembly Language (TPAL) is a compact, RISC-like assembly language. We specify TPAL through an abstract machine and implement the abstract machine as compiler transformations for C/C++ code and a specialized run-time system. We present an evaluation on both the Linux and the Nautilus kernels, considering a range of heartbeat interrupt mechanisms. The evaluation shows that TPAL can dramatically reduce the overheads of parallelism without compromising scalability.
Wed 23 JunDisplayed time zone: Eastern Time (US & Canada) change
13:30 - 14:05 | |||
13:30 5mTalk | Wire Sorts: A Language Abstraction for Safe Hardware Composition PLDI Michael Christensen University of California at Santa Barbara, Timothy Sherwood University of California at Santa Barbara, Jonathan Balkind University of California at Santa Barbara, Ben Hardekopf University of California at Santa Barbara DOI | ||
13:35 5mTalk | Scooter & Sidecar: A Domain-Specific Approach to Writing Secure Database Migrations PLDI John Renner University of California at San Diego, Alex Sanchez-Stern University of California at San Diego, Fraser Brown Stanford University, Sorin Lerner University of California at San Diego, Deian Stefan University of California at San Diego DOI | ||
13:40 5mTalk | Unqomp: Synthesizing Uncomputation in Quantum Circuits PLDI Anouk Paradis ETH Zurich, Benjamin Bichsel ETH Zurich, Samuel Steffen ETH Zurich, Martin Vechev ETH Zurich DOI | ||
13:45 5mTalk | Gleipnir: Toward Practical Error Analysis for Quantum Programs PLDI Runzhou Tao Columbia University, Yunong Shi University of Chicago, Jianan Yao Columbia University, John Hui Columbia University, Frederic T. Chong University of Chicago, Ronghui Gu Columbia University DOI | ||
13:50 5mTalk | Quantum Abstract Interpretation PLDI DOI | ||
13:55 5mTalk | Task Parallel Assembly Language for Uncompromising Parallelism PLDI Mike Rainey Carnegie Mellon University, Ryan R. Newton Facebook, Kyle Hale Illinois Institute of Technology, Nikos Hardavellas Northwestern University, Simone Campanoni Northwestern University, Peter Dinda Northwestern University, Umut A. Acar Carnegie Mellon University DOI | ||
14:00 5mTalk | DIY Assistant: A Multi-modal End-User Programmable Virtual Assistant PLDI Michael Fischer Stanford University, Giovanni Campagna Stanford University, Euirim Choi Stanford University, Monica S. Lam Stanford University DOI Media Attached |
Thu 24 JunDisplayed time zone: Eastern Time (US & Canada) change
01:30 - 02:05 | |||
01:30 5mTalk | Wire Sorts: A Language Abstraction for Safe Hardware Composition PLDI Michael Christensen University of California at Santa Barbara, Timothy Sherwood University of California at Santa Barbara, Jonathan Balkind University of California at Santa Barbara, Ben Hardekopf University of California at Santa Barbara DOI | ||
01:35 5mTalk | Scooter & Sidecar: A Domain-Specific Approach to Writing Secure Database Migrations PLDI John Renner University of California at San Diego, Alex Sanchez-Stern University of California at San Diego, Fraser Brown Stanford University, Sorin Lerner University of California at San Diego, Deian Stefan University of California at San Diego DOI | ||
01:40 5mTalk | Unqomp: Synthesizing Uncomputation in Quantum Circuits PLDI Anouk Paradis ETH Zurich, Benjamin Bichsel ETH Zurich, Samuel Steffen ETH Zurich, Martin Vechev ETH Zurich DOI | ||
01:45 5mTalk | Gleipnir: Toward Practical Error Analysis for Quantum Programs PLDI Runzhou Tao Columbia University, Yunong Shi University of Chicago, Jianan Yao Columbia University, John Hui Columbia University, Frederic T. Chong University of Chicago, Ronghui Gu Columbia University DOI | ||
01:50 5mTalk | Quantum Abstract Interpretation PLDI DOI | ||
01:55 5mTalk | Task Parallel Assembly Language for Uncompromising Parallelism PLDI Mike Rainey Carnegie Mellon University, Ryan R. Newton Facebook, Kyle Hale Illinois Institute of Technology, Nikos Hardavellas Northwestern University, Simone Campanoni Northwestern University, Peter Dinda Northwestern University, Umut A. Acar Carnegie Mellon University DOI | ||
02:00 5mTalk | DIY Assistant: A Multi-modal End-User Programmable Virtual Assistant PLDI Michael Fischer Stanford University, Giovanni Campagna Stanford University, Euirim Choi Stanford University, Monica S. Lam Stanford University DOI Media Attached |