Search NASA⌕ Search

DOE OSTI · 1844927

Instruction Roofline: An insightful visual performance model for GPUs

Abstract

The Roofline performance model provides an intuitive approach to identify performance bottlenecks and guide performance optimization. However, the classic FLOP-centric approach is inappropriate for the emerging applications that perform more integer operations than floating point operations. In this article, we reintroduce our Instruction Roofline Model on NVIDIA GPUs and expand our evaluation of it. The Instruction Roofline incorporates instructions and memory transactions across all memory hierarchies together, and provides more performance insights than the FLOP-oriented Roofline Model, that is, instruction throughput, stride memory access patterns, bank conflicts, and thread predication. We use our Instruction Roofline methodology to analyze eight proxy applications: HPGMG from AMReX, Matrix Transpose benchmarks, ADEPT from MetaHipMer's sequence alignment phase, EXTENSION from MetaHipMer's local assembly phase, CUSP, cuSPARSE, cudaTensorCoreGemm, and cuBLAS. We demonstrate the ability of our methodology to understand various aspects of performance and performance bottlenecks on NVIDIA GPUs and motivate code optimizations.

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Ding, N, Awan, M, Williams, S. 2021-01-01. Instruction Roofline: An insightful visual performance model for GPUs. https://doi.org/10.1002/cpe.6591

Cite the original work for its findings. Save a collection to share your selection of sources.