比较OpenCL和CUDA程序的参数

时间:2012-12-12 14:07:28

标签: performance cuda profiling opencl

我已经在CUDA和OpenCL中编写了一个科学计划。我想要做的就是将这些程序的运行时性能进行比较。在分析性能比较时,我应该考虑哪些参数?所花费的时间是其中一个参数。还有什么?

2 个答案:

答案 0 :(得分:3)

我认为有用的一些指标是

  1. 占用 - 您需要确保所有目标部署平台(GPU,CPU和/或实施)的占用率最大化。
  2. 吞吐量 - 您可以使用已修改的内核来计算最大计算吞吐量,这些内核将任何延迟归零,从而使您的内核受到计算限制。
  3. 延迟 - 再次 - 调整内核以执行(非常少)计算并测试性能。这将指示访问的各种内存如何影响内核及其性能。
  4. 我猜,任何其他参数可能都取决于您的应用程序的决策因素。例如,它的规模如何与问题相关 - 您的应用程序是否需要扩展?等等。

答案 1 :(得分:2)

您可以比较功耗。在每个代码中编写代码所花费的时间也可能是有意义的,因为它反映了项目的总成本。如果代码在不同的硬件上运行,则还可以包括硬件的成本。总之,这些数字可以为您提供每种解决方案的实施和运营总成本。