SWITCHES: A Lightweight Runtime for Dataflow Execution of Tasks on Many-Cores
Journal article, 2017

SWITCHES is a task-based dataflow runtime that implements a lightweight distributed triggering system for runtime dependence resolution and uses static scheduling and compile-time assignment policies to reduce runtime overheads. Unlike other systems, the granularity of loop-tasks can be increased to favor data-locality, even when having dependences across different loops. SWITCHES introduces explicit task resource allocation mechanisms for efficient allocation of resources and adopts the latest OpenMP Application Programming Interface (API), as to maintain high levels of programming productivity. It provides a source-to-source tool that automatically produces thread-based code. Performance on an Intel Xeon-Phi shows good scalability and surpasses OpenMP by an average of 32%.

tasks

parallel programming

runtime system

Many-core

SWITCHES

dataflow

Author

Andreas Diavastos

University of Cyprus

Pedro Petersen Moura Trancoso

Chalmers, Computer Science and Engineering (Chalmers), Computer Engineering (Chalmers)

University of Cyprus

Transactions on Architecture and Code Optimization

1544-3566 (ISSN) 1544-3973 (eISSN)

Vol. 14 3 31

Subject Categories

Computer Engineering

Computer Science

Computer Systems

DOI

10.1145/3127068

More information

Latest update

3/21/2018