Modeling Utilization to Identify Shared-Memory Atomic Bottlenecks

Performance analysis is critical for GPU programs with data-dependent behavior, but models like Roofline are not very useful for them and interpreting raw performance counters is tedious.In this work, we present an analytical model for shared memory atomics (fetchand-op and compare-and-swap instructions on NVIDIA Volta and Ampere GPU) that allows users to immediately determine if shared memory atomic operations are a bottleneck for a program's execution.Our model is based on modeling the architecture as a single-server queuing model whose inputs are performance counters.It captures load-dependent behavior such as pipelining, parallelism, and different access patterns.We embody this model in a tool that uses CUDA hardware counters as parameters to predict the utilization of the shared-memory atomic unit.To the best of our knowledge, no existing profiling tool or model provides this capability for shared-memory atomic operations.We used the model to compare two histogram kernels that use shared-memory atomics.Although nearly identical, their performance can be different by up to 30%.Our tool correctly identifies a bottleneck shift from shared-memory atomic unit as the cause of this discrepancy.

Authors

Institutions

Publication Details

Published
2025-03-01
DOI
https://doi.org/10.1145/3725798.3725801
Citations
4
Primary Topic
Advanced Memory and Neural Computing
Type
article
Field-Weighted Citation Impact
2.92

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Modeling Utilization to Identify Shared-Memory Atomic Bottlenecks

Sreepathi Pai, Rongcui Dong
4 citations
Advanced Memory and Neural Computing
2.92
article

Modeling Utilization to Identify Shared-Memory Atomic Bottlenecks

Sreepathi Pai, Rongcui Dong
article en
4 citations

Abstract

Performance analysis is critical for GPU programs with data-dependent behavior, but models like Roofline are not very useful for them and interpreting raw performance counters is tedious.In this work, we present an analytical model for shared memory atomics (fetchand-op and compare-and-swap instructions on NVIDIA Volta and Ampere GPU) that allows users to immediately determine if shared memory atomic operations are a bottleneck for a program's execution.Our model is based on modeling the architecture as a single-server queuing model whose inputs are performance counters.It captures load-dependent behavior such as pipelining, parallelism, and different access patterns.We embody this model in a tool that uses CUDA hardware counters as parameters to predict the utilization of the shared-memory atomic unit.To the best of our knowledge, no existing profiling tool or model provides this capability for shared-memory atomic operations.We used the model to compare two histogram kernels that use shared-memory atomics.Although nearly identical, their performance can be different by up to 30%.Our tool correctly identifies a bottleneck shift from shared-memory atomic unit as the cause of this discrepancy.

University of Rochester (US)
National Science Foundation
Openalex Percentile: Top 9%
Advanced Memory and Neural Computing
2.92
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Modeling Utilization to Identify Shared-Memory Atomic Bottlenecks — Sreepathi Pai, Rongcui Dong · (2025) | TGRS Research Map | TGRS