RGEM: A Responsive GPGPU Execution Model for Runtime Engines

  • Authors:
  • Shinpei Kato;Karthik Lakshmanan;Aman Kumar;Mihir Kelkar;Yutaka Ishikawa;Ragunathan (Raj) Rajkumar

  • Affiliations:
  • -;-;-;-;-;-

  • Venue:
  • RTSS '11 Proceedings of the 2011 IEEE 32nd Real-Time Systems Symposium
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

General-purpose computing on graphics processing units, also known as GPGPU, is a burgeoning technique to enhance the computation of parallel programs. Applying this technique to real-time applications, however, requires additional support for timeliness of execution. In particular, the non-preemptive nature of GPGPU, associated with copying data to/from the device memory and launching code onto the device, needs to be managed in a timely manner. In this paper, we present a responsive GPGPU execution model (RGEM), which is a user-space runtime solution to protect the response times of high-priority GPGPU tasks from competing workload. RGEM splits a memory-copy transaction into multiple chunks so that preemption points appear at chunk boundaries. It also ensures that only the highest-priority GPGPU task launches code onto the device at any given time, to avoid performance interference caused by concurrent launches. A prototype implementation of an RGEM-based CUDA runtime engine is provided to evaluate the real-world impact of RGEM. Our experiments demonstrate that the response times of high-priority GPGPU tasks can be protected under RGEM, whereas their response times increase in an unbounded fashion without RGEM support, as the data sizes of competing workload increase.