Flexible software profiling of GPU architectures
Flexible software profiling of GPU architectures
复制标题
GPU 架构的灵活软件分析
DOI:
--
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
S. Keckler
中科院分区:
文献类型:
--
作者:
M. Stephenson;S. Hari;Yunsup Lee;Eiman Ebrahimi;Daniel R. Johnson;D. Nellans;Mike O'Connor;S. Keckler
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.