Tuesday October 11th, 2016
Location: Panther Hollow Conference Room, CIC - 4th Floor
In this talk, I introduce a new resource virtualization framework, Zorua, that decouples the programmer-specified resource usage of a GPU application from the actual allocation in the on-chip hardware resources. Zorua enables this decoupling by virtualizing each resource transparently to the programmer. The virtualization provided by Zorua builds on two key concepts—dynamic allocation of the on-chip resources, and their oversubscription using a swap space in memory.
We demonstrate that by providing the illusion of more resources than physically available via controlled and coordinated virtualization, Zorua offers several important benefits: (i) Programming Ease. Zorua eases the burden on the programmer to provide code that is tuned to efficiently utilize the physically available on-chip resources. (ii) Portability. Zorua alleviates the necessity of re-tuning an application’s resource usage when porting the application across GPU generations. (iii) Performance. By dynamically allocating resources and carefully oversubscribing them when necessary, Zorua improves or retains the performance of applications that are already highly tuned to best utilize the resources. The holistic virtualization provided by Zorua also has many other potential uses, e.g., fine-grained resource sharing among multiple kernels, low-latency preemption of GPU programs, and support for dynamic parallelism.
Nandita Vijaykumar is a Ph.D. student in the Department of Electrical and Computer Engineering at Carnegie Mellon University. She is advised by Prof. Onur Mutlu and Prof. Phil Gibbons. Her current research focus is on high-performance, energy efficient and easy-to-program architectures for throughput-oriented systems such as modern GPUs.