A case for system support for concurrency exceptions

  • Authors:
  • Luis Ceze;Joseph Devietti;Brandon Lucia;Shaz Qadeer

  • Affiliations:
  • University of Washington;University of Washington;University of Washington;Microsoft Research

  • Venue:
  • HotPar'09 Proceedings of the First USENIX conference on Hot topics in parallelism
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this position paper we argue that concurrency errors should be fail-stop. We want to put concurrency errors in the same category as division-by-zero, segmentation fault in unmanaged languages and cast exceptions in managed languages. This would make nondeterminism in multithreaded execution be much more manageable. Concurrency exceptions would improve the debugging process during development and make crashes due to concurrency errors that happen in the field be more descriptive. Our goal in this paper is to justify our position, propose a general approach to concurrency exceptions and discuss system requirements and implications. Specifically, we discuss the semantics of concurrency exceptions at the language level, their implications in the compiler and runtime systems, how they should be delivered and, finally, how they are enabled by efficient architecture support.