Compositional relaxed concurrency
Author(s) -
Mark Batty
Publication year - 2017
Publication title -
philosophical transactions of the royal society a mathematical physical and engineering sciences
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 1.074
H-Index - 169
eISSN - 1471-2962
pISSN - 1364-503X
DOI - 10.1098/rsta.2015.0406
Subject(s) - concurrency , computer science , correctness , distributed computing , programming language , concurrent computing , atomicity , context (archaeology) , parallel computing , database transaction , paleontology , biology
There is a broad design space for concurrent computer processors: they can be optimized for low power, low latency or high throughput. This freedom to tune each processor design to its niche has led to an increasing diversity of machines, from powerful pocketable devices to those responsible for complex and critical tasks, such as car guidance systems. Given this context, academic concurrency research sounds notes of both caution and optimism. Caution because recent work has uncovered flaws in the way we explain the subtle memory behaviour of concurrent systems: specifications have been shown to be incorrect, leading to bugs throughout the many layers of the system. And optimism because our tools and methods for verifying the correctness of concurrent code-although built above an idealized model of concurrency-are becoming more mature. This paper looks at the way we specify the memory behaviour of concurrent systems and suggests a new direction. Currently, there is a siloed approach, with each processor and programming language specified separately in an incomparable way. But this does not match the structure of our programs, which may use multiple processors and languages together. Instead we propose a compositional approach, where program components carry with them a description of the sort of concurrency they rely on, and there is a mechanism for composing these. This will support not only components written for the multiple varied processors found in a modern system but also those that use idealized models of concurrency, providing a sound footing for mature verification techniques.This article is part of the themed issue 'Verified trustworthy software systems'.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom