Accelerators and Communications for HPC (AccelCom)

Primary tabs

LLVM support for OpenMP offloading to NVIDIA BlueField DPUs via the DOCA API.

ecoHMEM is a software ecosystem implementing novel and proven methodology to address automatic object-level placement for heterogeneous memory systems equipped with DRAM, HBM, Persistent Memory, etc.

A library designed to offer the global advantages of process malleability while providing a minimalist MPI-like syntax. The library includes a
series of predefined communication patterns that greatly ease the development of malleable applications. jThe package also includes a modified SLURM implementation.

The Dynamic Management of Resources Application Programming Interface (DMR API) is conceived to facilitate the programmability of malleable applications automating resource reallocation, process handling, and data distribution. Process malleability is the capability of reconfiguring the number of processes of an application on-the-fly, in other words, during its execution.

DMR API assists users to adopt malleability in their applications using OmpSs-like syntax. In this regard, with OmpSs pragmas data dependencies are defined and applications can turn malleable. DMR API is based on the Message Passing Interface (MPI) programming model, the standard de facto for developing HPC distributed applications. DMR adjusts the process number of the jobs depending on the cluster status in terms of resource availability and quantity of pending jobs.

JACC is a Just In Time (JIT) OpenACC framework in which pragma directives are replaced with runtime routines, allowing further analysis and optimization possibilities at runtime compared to at compile time for the OpenACC programming model.