Extrapolation of various application runs before aiming at its GPU port
Team work: Mickaël Boichot presented "Extrapolation of various application runs before aiming at its GPU port" at 4A312 the 13/5/2022 at 10h00.
Abstract
Before getting into the redesign of a parallel application to fit the specific programming model of GPUs, determining the strengths and weaknesses for a GPU port is crucial. Despite a range of existing works, developpers remain unable to anticipate this potential benefit to port their application on a specific GPU architecture together with a particular input data set. In this paper, we present an approach that allows to project the application's behavior on a given target GPU for a new input dataset thanks to multiple application runs on its CPU version. These projections enable the developer to assess whether a test case presents a good compromise between parallelism and memory occupancy for a given target GPU architecture. We have applied our approach to several HPC mini-applications and evaluate the advised projections by comparing them to the mini-application already ported to GPU versions, as ground thruth, on GPUs from different vendors. We find the same order of magnitude of the sizes of the input datasets saturating the GPU memory and we see that these applications are indeed profitable for a GPU porting.