中文

Zorua:通过解耦编程模型与资源管理提升GPU的编程易用性、可移植性与性能

分布式、并行与集群计算 2018-02-09 v1 硬件体系结构

摘要

应用程序资源规约——对线程数、每个线程块的暂存器内存使用量等若干参数的静态规定——构成了现有GPU编程模型的关键组成部分。该规约决定了应用程序在执行期间的性能,因为相应的片上硬件资源完全基于该规约进行分配与管理。正如我们在本工作中所展示的,这种软件提供的资源规约与硬件资源管理之间的紧密耦合,给编程易用性、可移植性和性能带来了显著挑战。我们本工作的目标是降低性能对软件提供的资源规约的依赖,以同时缓解上述挑战。为此,我们引入了Zorua这一新的资源虚拟化框架,它将GPU应用程序的程序员指定资源使用与实际片上硬件资源中的分配解耦。Zorua通过对每种资源向程序员透明地虚拟化来实现这种解耦。我们证明,通过提供比物理可用资源更多的资源假象,Zorua带来了若干重要益处:(i)编程易用性:Zorua减轻了程序员提供为高效利用物理可用片上资源而调优的代码负担。(ii)可移植性:Zorua缓解了在跨GPU代际移植应用程序时重新调优其资源使用的必要性。(iii)性能:通过动态分配资源并在必要时谨慎地过量订阅,Zorua改善或保持了已高度调优以最佳利用资源的应用程序的性能。Zorua所提供的整体虚拟化管理还有许多其他潜在用途,我们在本文中予以描述。

关键词

引用

@article{arxiv.1802.02573,
  title  = {Zorua: Enhancing Programming Ease, Portability, and Performance in GPUs by Decoupling Programming Models from Resource Management},
  author = {Nandita Vijaykumar and Kevin Hsieh and Gennady Pekhimenko and Samira Khan and Ashish Shrestha and Saugata Ghose and Phillip B. Gibbons and Onur Mutlu},
  journal= {arXiv preprint arXiv:1802.02573},
  year   = {2018}
}