Search papers, labs, and topics across Lattice.
This paper introduces DMRlib, a library that simplifies the development of malleable MPI applications by providing predefined communication patterns and an MPI-like syntax. The authors evaluate DMRlib in various scenarios, comparing rigid and moldable job submission modes using metrics like resource allocation rate and energy consumption. Results show that DMRlib's elastic approach can improve global throughput by over 3x compared to traditional non-malleable workloads.
Unlock 3x higher throughput in your data center by easily converting MPI applications to malleable jobs with a new library.
Process malleability has proved to have a highly positive impact on the resource utilization and global productivity in data centers compared with the conventional static resource allocation policy. However, the non-negligible additional development effort this solution imposes has constrained its adoption by the scientific programming community. In this work, we present DMRlib, 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. In addition, we deploy several scenarios to demonstrate the positive impact of process malleability featuring different scalability patterns. Concretely, we study two job submission modes (rigid and moldable) in order to identify the best-case scenarios for malleability using metrics such as resource allocation rate, completed jobs per second, and energy consumption. The experiments prove that our elastic approach may improve global throughput by a factor higher than 3x compared to the traditional workloads of non-malleable jobs.