Skip to main content
Kent Academic Repository

Multicore scheduling for lightweight communicating processes

Ritson, Carl G., Sampson, Adam T., Barnes, Frederick R.M. (2012) Multicore scheduling for lightweight communicating processes. Science of Computer Programming, 77 (6). pp. 727-740. ISSN 0167-6423. (doi:10.1016/j.scico.2011.04.006) (The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided) (KAR id:30808)

The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided.
Official URL:
http://www.cs.kent.ac.uk/pubs/2012/3210

Abstract

Process-oriented programming is a design methodology in which software applications are constructed from communicating concurrent processes. A typical process-oriented design involves the composition of a large number of small isolated component processes. These concurrent components allow for the scalable parallel execution of the resulting application on both shared-memory and distributed-memory architectures. In this paper we present a runtime designed to support process-oriented programming by providing lightweight processes and communication primitives. The runtime's scheduler, implemented using lock-free algorithms, automatically executes concurrent components in parallel on multicore systems. Heuristics dynamically group processes into cache-affine work units based on communication patterns. Work units are then distributed via wait-free work-stealing. Initial performance analysis shows that, using the algorithms presented in this paper, process-oriented software can execute with an efficiency approaching that of optimised sequential and coarse-grain threaded designs.

Item Type: Article
DOI/Identification number: 10.1016/j.scico.2011.04.006
Uncontrolled keywords: Concurrency, Multicore, Process-oriented, Scheduling
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Frederick Barnes
Date Deposited: 21 Sep 2012 09:49 UTC
Last Modified: 16 Nov 2021 10:08 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/30808 (The current URI for this page, for reference purposes)

University of Kent Author Information

Ritson, Carl G..

Creator's ORCID:
CReDIT Contributor Roles:

Barnes, Frederick R.M..

Creator's ORCID:
CReDIT Contributor Roles:
  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.