Skip to main content

Synchronization Views for Event-loop Actors

De Koster, Joeri, Marr, Stefan, D'Hondt, Theo (2012) Synchronization Views for Event-loop Actors. In: Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming. (doi:10.1145/2145816.2145873)

PDF - Author's Accepted Manuscript
Download (108kB) Preview
[img]
Preview
Official URL
http://doi.org/10.1145/2145816.2145873

Abstract

The actor model has already proven itself as an interesting concurrency model that avoids issues such as deadlocks and race conditions by construction, and thus facilitates concurrent programming. The tradeoff is that it sacrifices expressiveness and efficiency especially with respect to data parallelism. However, many standard solutions to computationally expensive problems employ data parallel algorithms for better performance on parallel systems. We identified three problems that inhibit the use of data-parallel algorithms within the actor model. Firstly, one of the main properties of the actor model, the fact that no data is shared, is one of the most severe performance bottlenecks. Especially the fact that shared state can not be read truly in parallel. Secondly, the actor model on its own does not provide a mechanism to specify extra synchronization conditions on batches of messages which leads to event-level data-races. And lastly, programmers are forced to write code in a continuation-passing style (CPS) to handle typical request-response situations. However, CPS breaks the sequential flow of the code and is often hard to understand, which increases complexity and lowers maintainability. We proposes \emphsynchronization views to solve these three issues without compromising the semantic properties of the actor model. Thus, the resulting concurrency model maintains deadlock-freedom, avoids low-level race conditions, and keeps the semantics of macro-step execution.

Item Type: Conference or workshop item (Poster)
DOI/Identification number: 10.1145/2145816.2145873
Divisions: Faculties > Sciences > School of Computing
Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Stefan Marr
Date Deposited: 26 Dec 2017 17:23 UTC
Last Modified: 29 May 2019 19:39 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/63841 (The current URI for this page, for reference purposes)
Marr, Stefan: https://orcid.org/0000-0001-9059-5180
  • Depositors only (login required):

Downloads

Downloads per month over past year