Performance Evaluation of Dynamic Scaling on MPI

30 Dec 2019  ·  Masatoshi Hanai, Georgios Theodoropoulos ·

Dynamic scaling aims to elastically change the number of processes during runtime to tune the performance of the distributed applications. This report briefly presents a performance evaluation of MPI process provisioning / de-provisioning for dynamic scaling by using 16 to 128 cores. Our dynamic scaling implementation allows the new MPI processes from new hosts to communicate with the original ones immediately. Moreover, it forbids the removing MPI processes to communicate with others as well as gets the information whether the host node can be terminated or not. Such a simple feature is not supported as a single-line API in MPI-2 such as MPI_Comm_spawn(). We provide our implementation as a simple library to extend a non-dynamic-scalable MPI program into a dynamic-scalable one by adding only several lines of codes.

PDF Abstract

Datasets


  Add Datasets introduced or used in this paper