【24h】

A Comparative Study of SYCL, OpenCL, and OpenMP

机译:SYCL,OpenCL和OpenMP的比较研究

获取原文

摘要

Recent trends indicate that future computing systems will be composed by a group of heterogeneous computing devices, including CPUs, GPUs, and other hardware accelerators. These devices provide increased processing performance, however, creating efficient code for them may require that programmers manage memory assignments and use specialized APIs, compilers, or runtime systems, thus making their programs dependent on specific tools. In this scenario, SYCL is an emerging C++ programming model for OpenCL that allows developers to write code for heterogeneous computing devices that are compatible with standard C++ compilation frameworks. In this paper, we analyze the performance and programming characteristics of SYCL, OpenMP, and OpenCL using both a benchmark and a real-world application. Our performance results indicate that programs that rely on available SYCL runtimes are not on par with the ones based on OpenMP and OpenCL yet. Nonetheless, the gap is getting smaller if we consider the results reported by previous studies. In terms of programmability, SYCL presents itself as a competitive alternative to OpenCL, requiring fewer lines of code to implement kernels and also fewer calls to essential API functions and methods.
机译:最近的趋势表明,未来的计算系统将由一组异构计算设备组成,包括CPU,GPU和其他硬件加速器。这些设备提供了更高的处理性能,但是,为它们创建高效的代码可能需要程序员管理内存分配并使用专用的API,编译器或运行时系统,从而使其程序依赖于特定的工具。在这种情况下,SYCL是OpenCL的新兴C ++编程模型,允许开发人员为与标准C ++编译框架兼容的异构计算设备编写代码。在本文中,我们使用基准测试程序和实际应用程序来分析SYCL,OpenMP和OpenCL的性能和编程特性。我们的性能结果表明,依赖于可用SYCL运行时的程序尚不能与基于OpenMP和OpenCL的程序相提并论。尽管如此,如果我们考虑以前的研究报告的结果,差距正在缩小。在可编程性方面,SYCL可以作为OpenCL的有竞争力的替代品,它需要更少的代码行来实现内核,也需要更少的对基本API函数和方法的调用。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号