GPI-Space
GPI-Space is a task-based workflow management system for parallel applications. GPI-Space is designed on the principle of separation between the automatic management of parallel executions and the description of the problem-specific computational tasks and their interdependencies. It allows the domain developers to build domain-specific workflows using their own parallelisation patterns, data management policies, and I/O routines, while relying on the runtime system to take care of general aspects related to scheduling, distributed memory management, and task execution. Simultaneously, GPI-Space provides support for running legacy codes and existing domain workflows as tasks within a higher-level workflow, thus reducing the turnover time of projects for the end user.
The coupling of applications with workflows using different programming models and guaranteeing their interoperability is a challenge to be addressed when considering the software of future heterogeneous systems. MPI and GASPI are important programming models. To support the execution of MPI and GASPI programs in GPI-Space is an important step towards addressing such challenge and what the DEEP-SEA project aims to investigate. Another challenge is the concept of malleability. This is very relevant when considering the MSA and a core aspect in DEEP-SEA. Malleability requires a good integration between a programming system and resource management. The support for dynamic resources, access and negotiation of allocations provided by a resource manager allows malleable applications. The DEEP-SEA project will investigate how GPI-Space can take advantage of such support to increase its malleability.