Skip to main content
QUICK REVIEW

[论文解读] An Exploration of OpenCL for a Numerical Relativity Application

Niket K. Choudhary, Rakesh Ginjupalli|arXiv (Cornell University)|Oct 19, 2010
Advanced Numerical Methods in Computational Mathematics参考文献 13被引用 5
一句话总结

本文通过将用于数值相对论的时域Teukolsky方程求解器移植到多种CPU和GPU上,评估了OpenCL在高性能科学计算中的应用。结果表明,相同的OpenCL代码在现代GPU上相比CPU实现了数量级的性能提升,且结果基本不受厂商或架构影响,同时证明单块高端GPU的性能可媲美配备高速互连的80核CPU集群。

ABSTRACT

Currently there is considerable interest in making use of many-core processor architectures, such as Nvidia and AMD graphics processing units (GPUs) for scientific computing. In this work we explore the use of the Open Computing Language (OpenCL) for a typical Numerical Relativity application: a time-domain Teukolsky equation solver (a linear, hyperbolic, partial differential equation solver using finite-differencing). OpenCL is the only vendor-agnostic and multi-platform parallel computing framework that has been adopted by all major processor vendors. Therefore, it allows us to write portable source-code and run it on a wide variety of compute hardware and perform meaningful comparisons. The outcome of our experimentation suggests that it is relatively straightforward to obtain order-of-magnitude gains in overall application performance by making use of many-core GPUs over multi-core CPUs and this fact is largely independent of the specific hardware architecture and vendor. We also observe that a single high-end GPU can match the performance of a small-sized, message-passing based CPU cluster.

研究动机与目标

  • 评估OpenCL作为异构硬件上可移植、厂商无关的科学计算框架的适用性。
  • 评估在真实世界的数值相对论应用——时域有限差分求解Teukolsky方程——中使用OpenCL所获得的性能提升。
  • 使用相同的源代码在多个CPU和GPU平台(Intel、IBM、Nvidia、AMD)上比较性能表现。
  • 评估在不同硬件平台之间,性能、成本与功耗效率之间的权衡。
  • 证明OpenCL在不牺牲优化潜力的前提下,同时实现了高性能与代码可移植性。

提出的方法

  • 使用二阶Lax-Wendroff格式实现一个同质、线性、双曲型PDE求解器,用于时域积分。
  • 将求解器的所有计算内核转换为OpenCL内核,以实现在CPU和GPU上的执行。
  • 在所有目标平台(Intel Nehalem、IBM Power7、Nvidia Fermi、AMD Radeon)上使用完全相同的OpenCL源代码,以确保可移植性。
  • 使用双精度浮点数算术运算,在所有平台上以GFLOPS为单位测量性能。
  • 评估每美元性能和每瓦性能,以比较成本和能效。
  • 使用OpenCL运行时管理内核编译、数据传输和异构设备上的执行调度。

实验结果

研究问题

  • RQ1OpenCL是否能在无需厂商特定调优的情况下,在多种CPU和GPU架构上实现高性能?
  • RQ2GPU加速带来的性能提升在多大程度上依赖于底层硬件或厂商?
  • RQ3在科学PDE求解器中,单块GPU的性能与小型多节点CPU集群相比如何?
  • RQ4在选择科学计算硬件时,性能、成本与功耗效率之间的权衡如何?
  • RQ5通过OpenCL实现的代码可移植性在多大程度上减少了HPC应用的开发与维护工作量?

主要发现

  • 单块高端GPU(Nvidia Fermi或AMD Radeon)的性能可媲美配备高速互连的80核Intel Xeon CPU集群。
  • OpenCL使得相同的源代码能在多种架构上高效运行,包括x86(Intel)和PowerPC(IBM),且在CPU和GPU上性能几乎完全一致。
  • 无论厂商或底层架构如何,使用GPU相比CPU均可实现高达一个数量级的性能提升。
  • AMD Radeon GPU的性能与Nvidia Fermi GPU相当,但成本低五倍以上,且功耗效率略优,是成本效益最高的选择。
  • 与CPU相比,GPU在每瓦性能和每美元性能方面均提升了约一个数量级。
  • OpenCL的可移植性显著降低了代码开发与优化的工作量,因为同一内核代码在所有测试平台上均能高效运行。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。