PaRSEC is a generic framework for architecture aware scheduling and management of micro-tasks on distributed many-core heterogeneous architectures. Applications we consider can be expressed as a Direct Acyclic Graph of tasks with labeled edges designating data dependencies. DAGs are represented in a compact problem-size independent format that can be queried on-demand to discover data dependencies in a totally distributed fashion. PaRSEC assigns computation threads to the cores, 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.
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.
DPLASMA: Distributed Parallel Linear Algebra Software for Multicore Architectures
DPLASMA is the leading implementation of a dense linear algebra package for distributed heterogeneous systems. It is designed to deliver sustained performance for distributed systems where each node featuring multiple sockets of multicore processors, and if available, accelerators like GPUs or Intel Xeon Phi. DPLASMA achieves this objective through the state of the art PaRSEC runtime, porting the Parallel Linear Algebra Software for Multicore Architectures (PLASMA) algorithms to the distributed memory realm.
DPLASMA’s feature set includes:
- Linear systems of equations (Cholesky, LU [inc. pivoting, PP], LDL [prototype]).
- Least squares (QR & LQ).
- Symmetric eigenvalue problem (Reduction to Band [prototype]).
- Level 3 Tile BLAS (GEMM, TRSM, TRMM, HEMM/SYMM, HERK/SYRK, HER2K/SYR2k.
- Covers double real, double complex, single real, and single complex (D, Z, S, C) precisions.
- Provides ScaLAPACK-compatible interface for matrices in F77 column-major layout
- Supports: Linux, Windows, Mac OS X, UN*X (depends on MPI, hwloc)
For more information feel free to drill in our public wiki. Two moderated mailing-lists are available, one for users and one for developers. Feel free to join us.