/parsec

PaRSEC is a generic framework for architecture aware scheduling and management of micro-tasks on distributed, GPU accelerated, many-core heterogeneous architectures. PaRSEC assigns computation threads to the cores, GPU accelerators, overlaps communications and computations and uses a dynamic, fully-distributed scheduler based on architectural features such as NUMA nodes and algorithmic features such as data reuse.

Primary LanguageCOtherNOASSERTION

PaRSEC

PaRSEC: the Parallel Runtime Scheduler and Execution Controller for micro-tasks on distributed heterogeneous systems.

Features

PaRSEC is a generic framework for architecture aware scheduling and management of micro-tasks on distributed many-core heterogeneous architectures. Applications are expressed as a Direct Acyclic Graph of tasks with labeled edges designating data dependencies. PaRSEC assigns computation threads to the cores, overlaps communications and computations between nodes as well as between host and accelerators (like GPUs). It achieves these features by using a dynamic, fully-distributed scheduler based on architectural features such as NUMA nodes and GPU awareness, as well as algorithmic features such as data reuse.

Several high level languages are proposed to expose the DAG from the applications. You can either build the DAG as you go, by using a mechanism called dynamic task discovery (DTD), or use the Parameterized Task Graph language (PTG) to expose a compact problem-size independent format that can be queried on-demand to discover data dependencies in a totally distributed fashion.

The framework includes libraries, a runtime system, and development tools to help application developers tackle the difficult task of porting their applications to highly heterogeneous and diverse environment.

Installing PaRSEC

Please read the INSTALL.rst file for the software dependencies and the installation instructions.

Links and Community

You can report bugs on the GitHub issues and find documentation and tutorials in the PaRSEC wiki.

If you are interested in this project and want to join the users community, our mailman will be happy to accept you on the project user (moderated) mailing list at parsec-users@icl.utk.edu.


Happy hacking,
The PaRSEC team.