Supporting MPI Malleable Applications upon the OAR Resource Manager
Résumé
Malleable applications are able to adapt themselves, at execution time, to changes in the amount of resources available. Developing applications with a malleable behavior require some flexibility from programming environment. For instance, MPI-2 provides dynamic processes creation, which can be employed to add some flexibility to MPI applications. Further, an environment that can provide dynamic resources is also required to enable malleability. The OAR resource manager is an open source system composed by high level components, which can be easily extended to integrate new features. Upon this context, this paper exposes how to develop malleable applications using the MPI-2 features, in which the dynamic resources are known through interactions with OAR. Our first results shown that OAR will be able to support malleable jobs and that malleability can provide indeed a better resource utilization with an improvement of almost 35%. Besides resource utilization improvement, we present a discussion about some other advantages brought by some flexibility in job allocation.