首页> 外文会议>IEEE International Conference on High Performance Computing >Efficient Fork-Join on GPUs Through Warp Specialization
【24h】

Efficient Fork-Join on GPUs Through Warp Specialization

机译:通过经纱专业化高效的叉 - 加入GPU

获取原文

摘要

Graphics Processing Units (GPUs) are increasingly used to accelerate portions of general-purpose applications. Higher level language extensions have been proposed to help non-experts bridge the gap between a host and the GPU's threading model. Recent updates to the OpenMP standard allow a user to parallelize code on a GPU using the well known fork-join programming model for CPUs. Mapping this model to the architecturally visible threading model of typical GPUs has been challenging. In this work we propose a novel approach using the technique of Warp Specialization. We show how to specialize one warp (a unit of 32 GPU threads) to handle sequential code on a GPU. When this master warp reaches a user-specified parallel region, it awakens unused GPU warps to collectively execute the parallel code. Based on this method, we have implemented a Clang-based, OpenMP 4.5 compliant, open source compiler for GPUs. Our work achieves a 3.6x (and up to 32x) performance improvement over a baseline that does not exploit fork-join parallelism on an NVIDIA k40m GPU across a set of 25 kernels. Compared to state-of-the-art compilers (Clang-ykt, GCC-OpenMP, GCC-OpenACC) our work is 2.1 - 7.6x faster. Our proposed technique is simpler to implement, robust, and performant.
机译:图形处理单元(GPU)越来越多地用于加速通用应用的部分。提出了更高级别的语言扩展,帮助非专家桥接主机和GPU的线程模型之间的差距。 OpenMP标准的最新更新允许用户使用众所周知的CPU的众所周知的Fork-Join编程模型并将代码并行化GPU。将此模型映射到典型GPU的架构可见线程模型一直在具有挑战性。在这项工作中,我们提出了一种利用经线专业技术的新方法。我们展示了如何专注于一个扭曲(一个32 GPU线程)来处理GPU上的顺序代码。当此主纱线到达用户指定的并行区域时,它唤醒未使用的GPU扭曲以集体执行并行代码。基于此方法,我们已经实现了基于CLANG的OpenMP 4.5,用于GPU的开源编译器。我们的工作通过基线实现了3.6倍(最多32倍)的性能改进,这些基线不会在一组25内核上的NVIDIA K40M GPU上利用Fork-JoinParpastication。与最先进的编译器(Clang-YKT,GCC-OpenMP,GCC-OPECH)相比,我们的工作更快了2.1-7.6倍。我们所提出的技术更简单地实现,强大和性能。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号