GPU-EvR: Run-time event based real-time scheduling framework on GPGPU platform

GPU architecture has traditionally been used in graphics application because of its enormous computing capability. Moreover, GPU architecture has also been used for general purpose computing in these days. Most of the current scheduling frameworks that are developed to handle GPGPU workload operate sequentially. This is problematic since this sequential approach may not be scalable for real-time systems, which is a consequence of the approach's inability to support preemption. We propose a novel scheduling framework that provides real-time support for the GPGPU platform. In contrast to existing frameworks, our proposed framework considers both concurrent execution of applications on the GPU and mapping between streaming multiprocessors and thread blocks. By considering both concurrent execution and mapping, our framework is able to guarantee timing up to 6.4 times as many applications compared to TimeGraph [9] and Global EDF [5]. In addition, our experimental applications use up to 20% less power under our scheduling framework compared to [5], [9].

[1]  Kyoung-Don Kang,et al.  Supporting Preemptive Task Executions and Memory Copies in GPGPUs , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[2]  Naga K. Govindaraju,et al.  A Survey of General‐Purpose Computation on Graphics Hardware , 2007 .

[3]  Yangdong Deng,et al.  Hermes: An integrated CPU/GPU microarchitecture for IP routing , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[4]  Jack J. Purdum,et al.  C programming guide , 1983 .

[5]  Yangdong Deng,et al.  Evaluating the potential of graphics processors for high performance embedded computing , 2011, 2011 Design, Automation & Test in Europe.

[6]  James H. Anderson,et al.  An optimal k-exclusion real-time locking protocol motivated by multi-GPU systems , 2012, Real-Time Systems.

[7]  Shinpei Kato,et al.  TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments , 2011, USENIX Annual Technical Conference.

[8]  James H. Anderson,et al.  Tardiness bounds under global EDF scheduling on a multiprocessor , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[9]  Shinpei Kato,et al.  Zero-copy I/O processing for low-latency GPU computing , 2013, 2013 ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS).

[10]  Mark Oskin,et al.  Using modern graphics architectures for general-purpose computing: a framework and analysis , 2002, MICRO 35.

[11]  James H. Anderson,et al.  Replica-Request Priority Donation: A Real-Time Progress Mechanism for Global Locking Protocols , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[12]  James H. Anderson,et al.  Globally scheduled real-time multiprocessor systems with GPUs , 2011, Real-Time Systems.

[13]  Jürgen Teich,et al.  Dynamic Task-Scheduling and Resource Management for GPU Accelerators in Medical Imaging , 2012, ARCS.

[14]  Samuel Williams,et al.  The Landscape of Parallel Computing Research: A View from Berkeley , 2006 .

[15]  James H. Anderson,et al.  Real-World Constraints of GPUs in Real-Time Systems , 2011, 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications.

[16]  Shengkui Zhao,et al.  Real-time implementation and performance optimization of 3D sound localization on GPUs , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[17]  Kevin Skadron,et al.  Rodinia: A benchmark suite for heterogeneous computing , 2009, 2009 IEEE International Symposium on Workload Characterization (IISWC).