Retargeting and Respecializing GPU Workloads for Performance Portability

Ivan R. Ivanov, Oleksandr Zinenko, Jens Domke, Toshio Endo, William S. Moses

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

In order to come close to peak performance, accelerators like GPUs require significant architecture-specific tuning that understand the availability of shared memory, parallelism, tensor cores, etc. Unfortunately, the pursuit of higher performance and lower costs have led to a significant diversification of architecture designs, even from the same vendor. This creates the need for performance portability across different GPUs, especially important for programs in a particular programming model with a certain architecture in mind. Even when the program can be seamlessly executed on a different architecture, it may suffer a performance penalty due to it not being sized appropriately to the available hardware resources such as fast memory and registers, let alone not using newer advanced features of the architecture. We propose a new approach to improving performance of (legacy) CUDA programs for modern machines by automatically adjusting the amount of work each parallel thread does, and the amount of memory and register resources it requires. By operating within the MLIR compiler infrastructure, we are able to also target AMD GPUs by performing automatic translation from CUDA and simultaneously adjust the program granularity to fit the size of target GPUs. Combined with autotuning assisted by the platform-specific compiler, our approach demonstrates 27% geomean speedup on the Rodinia benchmark suite over baseline CUDA implementation as well as performance parity between similar NVIDIA and AMD GPUs executing the same CUDA program.

Original languageEnglish (US)
Title of host publicationCGO 2024 - Proceedings of the 2024 IEEE/ACM International Symposium on Code Generation and Optimization
EditorsTobias Grosser, Christophe Dubach, Michel Steuwer, Jingling Xue, Guilherme Ottoni, Fernando Magno Quintao Pereira
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages119-132
Number of pages14
ISBN (Electronic)9798350395099
DOIs
StatePublished - 2024
Event22nd IEEE/ACM International Symposium on Code Generation and Optimization, CGO 2024 - Edinburgh, United Kingdom
Duration: Mar 2 2024Mar 6 2024

Publication series

NameCGO 2024 - Proceedings of the 2024 IEEE/ACM International Symposium on Code Generation and Optimization

Conference

Conference22nd IEEE/ACM International Symposium on Code Generation and Optimization, CGO 2024
Country/TerritoryUnited Kingdom
CityEdinburgh
Period3/2/243/6/24

ASJC Scopus subject areas

  • Hardware and Architecture
  • Signal Processing
  • Software
  • Control and Optimization

Fingerprint

Dive into the research topics of 'Retargeting and Respecializing GPU Workloads for Performance Portability'. Together they form a unique fingerprint.

Cite this