Skip to main content
eScholarship
Open Access Publications from the University of California

UC Davis

UC Davis Electronic Theses and Dissertations bannerUC Davis

Capturing & Modifying GPU Binaries in User-mode

Abstract

Binary instrumentation refers to adding additional instructions to an executable in order to measure or instrument some aspect of the program, such as adding instructions that count the number of times a certain instruction is executed. This thesis argues that GPU binary instrumentation and rewriting can be accomplished through user-mode tools without driver support by presenting a design and implementation of a binary instrumentation tool for AMD's HIP runtime. We compare our design to similar tools such as PIN for CPUs and NVBIT for NVIDIA GPUs. We provide example applications for instrumenting GPU code and give an analysis of our design decisions. This thesis evaluates the quality of the instrumentation applications and discusses challenges that arose during their implementation as well as evaluating the costs of the system itself through measurements of rewrite and instrumentation times. Finally, we give recommendations for designing future binary instrumentation systems without driver or kernel support.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View