The High-Performance Computing community is steering towards the exascale milestone. To effectively utilize the computing resources, the high performance computing applications should be able to adapt to change in resources. Invasive MPI along with the Invasive Resource manager provides an infrastructure for developing applications that can adapt to the dynamic allocation of resources. Developing an invasive application is a huge challenge for the programmers. One need to consider the possibility of new processes, its interaction with the existing processes, sharing the application data between the existing and new process and finding the suitable entry point for the new processes in the application. These difficulties in making invasive applications became motivation for a phase oriented programming concept and resulted in the Elastic Phase Oriented Programming (EPOP) model. This model treats an application as a collection of multiple phases. A minimalistic EPOP model was implemented in C as a prototype for demonstrating the phase oriented approach. This thesis work extends the EPOP into a fully-fledged programming model with the capabilities to interact with the Invasive MPI and Invasive Resource Manager. This model acts as an abstraction for providing malleability to applications. By using this programming model, a developer can create invasive applications using normal MPI. EPOP model executes the application, profiles it, forwards the performance data of the application to the resource manager for making adaptation decisions and adapts according to the decision made by the resource manager.
«
The High-Performance Computing community is steering towards the exascale milestone. To effectively utilize the computing resources, the high performance computing applications should be able to adapt to change in resources. Invasive MPI along with the Invasive Resource manager provides an infrastructure for developing applications that can adapt to the dynamic allocation of resources. Developing an invasive application is a huge challenge for the programmers. One need to consider the possibilit...
»