Automated GPU Grid Geometry Selection for OPENMP Kernels

  • Taylor Lloyd University of Alberta
  • Artem Chikin University of Alberta
  • Sanket Kedia IIT Kharagpur
  • Dhruv Jain IIT Kharagpur
  • José Nelson Amaral University of Alberta

Resumo


Modern supercomputers are increasingly using GPUs to improve performance per watt. Generating GPU code for target regions in openMP 4.0, or later versions, requires the selection of grid geometry to execute the GPU kernel. Existing industrial-strength compilers use a simple heuristic with arbitrary numbers that are constant for all kernels. After characterizing the relationship between region features, grid geometry and performance, we built a machine-learning model that successfully predicts a suitable geometry for such kernels and results in a performance improvement with a geometric mean of 5% across the benchmarks studied. However, this prediction is impractical because the overhead of the predictor is too high. A careful study of the results of the predictor allowed for the development of a practical low-overhead heuristic that resulted in a performance improvement of up to 7 times with a geometric mean of 25.9%. This paper describes the methodology to build the machine-learning model, and the practical low-overhead heuristic that can be used in industry-strong compilers.
Palavras-chave: Geometry, Benchmark testing, Kernel, Graphics processing units, Machine learning, Predictive models, Feature extraction, GPUs, heterogeneous computing, openMP, Machine Learning, Grid Geometry
Publicado
24/09/2018
LLOYD, Taylor; CHIKIN, Artem; KEDIA, Sanket; JAIN, Dhruv; AMARAL, José Nelson. Automated GPU Grid Geometry Selection for OPENMP Kernels. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 30. , 2018, Lyon/FR. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2018 . p. 442-449.