DocumentCode :
3663928
Title :
Flexible software profiling of GPU architectures
Author :
Mark Stephenson;Siva Kumar Sastry Hari;Yunsup Lee;Eiman Ebrahimi;Daniel R. Johnson;David Nellans;Mike O´Connor;Stephen W. Keckler
Author_Institution :
NVIDIA, USA
fYear :
2015
fDate :
6/1/2015 12:00:00 AM
Firstpage :
185
Lastpage :
197
Abstract :
To aid application characterization and architecture design space exploration, researchers and engineers have developed a wide range of tools for CPUs, including simulators, profilers, and binary instrumentation tools. With the advent of GPU computing, GPU manufacturers have developed similar tools leveraging hardware profiling and debugging hooks. To date, these tools are largely limited by the fixed menu of options provided by the tool developer and do not offer the user the flexibility to observe or act on events not in the menu. This paper presents SASSI (NVIDIA assembly code “SASS” Instrumentor), a low-level assembly-language instrumentation tool for GPUs. Like CPU binary instrumentation tools, SASSI allows a user to specify instructions at which to inject user-provided instrumentation code. These facilities allow strategic placement of counters and code into GPU assembly code to collect user-directed, fine-grained statistics at hardware speeds. SASSI instrumentation is inherently parallel, leveraging the concurrency of the underlying hardware. In addition to the details of SASSI, this paper provides four case studies that show how SASSI can be used to characterize applications and explore the architecture design space along the dimensions of instruction control flow, memory systems, value similarity, and resilience.
Keywords :
"Instruments","Instruction sets","Graphics processing units","Computer architecture","Registers"
Publisher :
ieee
Conference_Titel :
Computer Architecture (ISCA), 2015 ACM/IEEE 42nd Annual International Symposium on
Type :
conf
DOI :
10.1145/2749469.2750375
Filename :
7284065
Link To Document :
بازگشت