2019 27th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP) | 2019

The Pipeline Performance Model: A Generic Executable Performance Model for GPUs

 
 

Abstract


This paper presents the pipeline performance model, a generic GPU performance model, which helps understand the performance of GPU code by using a code representation that is very close to the source code. The code is represented by a graph in which the nodes correspond to the source code instructions and the edges to data dependences between them. Furthermore, each node is enhanced with two latencies that characterize the instruction s time behavior on the GPU. This graph, together with a simple characterization of the GPU and the execution configuration, is used by a simulator to mimic the execution of the code. We validate the model on the micro-benchmarks used to determine the latencies and on a matrix multiplication kernel, both on an NVIDIA Fermi and an NVIDIA Pascal GPU. Initial results show that the simulated times follow the measured times, with acceptable errors, for a wide occupancy range. We argue that to achieve better accuracies it is necessary to further refine the model to take into account the complexity of memory access and warp scheduling, especially for more recent GPUs.

Volume None
Pages 260-265
DOI 10.1109/EMPDP.2019.8671606
Language English
Journal 2019 27th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP)

Full Text