KAWS: Coordinate Kernel-Aware Warp Scheduling and Warp Sharing Mechanism for Advanced GPUs
0
조회
0
다운로드
0
인용
0
참고문헌
키워드
초록
Modern graphics processor unit (GPU) architectures offer significant hardware resource enhancements for parallel computing. However, without software optimization, GPUs continuously exhibit hardware resource underutilization. In this paper, we indicate the need to alter different warp scheduler schemes during different kernel execution periods to improve resource utilization. Existing warp schedulers cannot be aware of the kernelprogress to provide an effective scheduling policy. In addition, we identified the potential for improving resource utilization for multiple-warp-scheduler GPUs by sharing stalling warps with selected warp schedulers. To address the efficiency issue of the present GPU, we coordinated the kernel-aware warp scheduler and warp sharing mechanism (KAWS). The proposed warp scheduler acknowledges the execution progress of the running kernel to adapt to a more effective scheduling policy when the kernel progress attains a point of resource underutilization. Meanwhile, the warp-sharing mechanism distributes stalling warps to different warpschedulers wherein the execution pipeline unit is ready. Our design achieves performance that is on an average higher than that of the traditional warp scheduler by 7.97% and employs marginal additional hardware overhead.
Abstract
Modern graphics processor unit (GPU) architectures offer significant hardware resource enhancements for parallel computing. However, without software optimization, GPUs continuously exhibit hardware resource underutilization. In this paper, we indicate the need to alter different warp scheduler schemes during different kernel execution periods to improve resource utilization. Existing warp schedulers cannot be aware of the kernelprogress to provide an effective scheduling policy. In addition, we identified the potential for improving resource utilization for multiple-warp-scheduler GPUs by sharing stalling warps with selected warp schedulers. To address the efficiency issue of the present GPU, we coordinated the kernel-aware warp scheduler and warp sharing mechanism (KAWS). The proposed warp scheduler acknowledges the execution progress of the running kernel to adapt to a more effective scheduling policy when the kernel progress attains a point of resource underutilization. Meanwhile, the warp-sharing mechanism distributes stalling warps to different warpschedulers wherein the execution pipeline unit is ready. Our design achieves performance that is on an average higher than that of the traditional warp scheduler by 7.97% and employs marginal additional hardware overhead.
참고문헌 (15)
- T. G. Rogers, "Cache-conscious wavefront scheduling", Proceedings of 2012 45th Annual IEEE, 2012, 72~83
- H. Asghari Esfeden, "CORF: coalescing operand register file for GPUs", Proceedings of the 24th International Conference on Architectural Support for Programming Languages and Operating Systems, pp.701~714 (2019)
- C. T. Do, "Application characteristics-aware sporadic cache bypassing for high performance GPGPUs", Journal of Parallel and Distributed Computing, 122, pp.238~250 (2018)
- X. Chen, "Adaptive cache management for energy-efficient GPU computing", Proceedings of 2014 47th Annual IEEE, 2014, 343~355
- S. Y. Lee, "CAWA : coordinated warp scheduling and cache prioritization for critical warp acceleration of GPGPU workloads", ACM SIGARCH Computer Architecture News, 43(3S), pp.515~527 (2015)
- M. Lee, "iPAWS: instruction-issue pattern-based adaptive warp scheduling for GPGPUs", Proceedings of 2016 IEEE International Symposium on High Performance Computer Architecture (HPCA),, pp.370~381 (2016)
- J. Liu, "SAWS: synchronization aware GPGPU warp scheduling for multiple independent warp schedulers", Proceedings of 2015 48th Annual IEEE, 2015, 383~394
- A. Bakhoda, "Analyzing CUDA workloads using a detailed GPU simulator", Proceedings of 2009 IEEE International Symposium on Performance Analysis of Systems and Software, pp.163~174 (2009)
- M. Khairy, "Accel-Sim: an extensible simulation framework for validated GPU modeling", Proceedings of 2020 ACM, 2020, 473~486
- S. Che, "Rodinia: a benchmark suite for heterogeneous computing", Proceedings of 2009 IEEE International Symposium on Workload Characterization (IISWC), pp.44~54 (2009)
- S. Che, "A characterization of the Rodinia benchmark suite with comparison to contemporary CMP workloads", Proceedings of IEEE International Symposium on Workload Characterization (IISWC), pp.1~11 (2010)
- Center for Reliable and High-Performance Computing, University of Illinois at Urbana-Champaign, "J. A. Stratton", ~, pp.Technical Report No. IMPACT-12-01 (2012)
- S. Grauer-Gray, "Auto-tuning a high-level language targeted to GPU codes", Proceedings of 2012 Innovative Parallel Computing (InPar), pp.1~10 (2012)
- A. Karki, "Tango: a deep neural network benchmark suite for various accelerators", Proceedings of 2019 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp.137~138 (2019)
- B. Fang, "GPU-Qin: a methodology for evaluating the error resilience of GPGPU applications", Proceedings of 2014 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp.221~230 (2014)
