【问题标题】:OpenCL examples with benchmarks带有基准的 OpenCL 示例
【发布时间】:2010-11-28 07:08:49
【问题描述】:

我正在寻找一些 OpenCL 的介绍性示例,这些示例说明了可以体验到速度大幅提升(例如,50 倍至 1000 倍)的应用程序类型。 Cuda 有很多很好的例子,但我还没有为 OpenCL 找到相同的东西。

一个很好的例子可能是通过粒子群、模拟退火、进化算法、蚁群优化等对复杂函数进行全局优化。

【问题讨论】:

    标签: cuda opencl


    【解决方案1】:

    从 GPU 编程的角度来看,您所描述的算法既不简单也不具有介绍性。 CUDA 在这些领域有例子的原因是它已经存在了足够长的时间,人们已经开发了这些例子。目前没有在 GPU 上运行的公开可用版本的 OpenCL。 ATI 和 NVIDIA 都提供其 OpenCL 驱动程序的 beta 版本,但 ATI 仅支持 CPU 计算,而 NVIDIA 需要签署 NDA 才能获得。简而言之,OpenCL 出现的时间还不够长,无法开发和演示此类综合示例。

    也就是说,访问 NVIDIA 的 OpenCL 驱动程序并不困难。您可以在他们的论坛here 上了解如何操作。我假设 OpenCL 发行版包含一些示例程序来帮助您入门。

    这也意味着这是您开发其中一些基准并发布结果的绝佳机会。然后人们会提到你的工作,而不是你提到他们的工作。不过我不会期待太多惊喜。一旦 OpenCL 得到广泛使用和支持,它的性能应该与 CUDA 性能大致相当。

    【讨论】:

    • “目前没有在 GPU 上运行的公开可用的 OpenCL 版本。”不确定您在 9 月份回复时是否是这种情况,但现在绝对不是这种情况。 AMD (ATI) 和 Nvidia 都有运行良好的 OpenCL 实现。
    【解决方案2】:

    nvidia SDK 中有一些很好的例子:

    http://developer.nvidia.com/object/get-opencl.html

    【讨论】:

      【解决方案3】:

      我们的团队一直致力于 OpenCL 算法和加速,我们想推荐这篇文章

      http://www.cmsoft.com.br/index.php?view=article&catid=1:latest-news&id=247:opencl-simulated-annealing

      作为最小化模拟退火算法的示例实现。

      【讨论】:

        【解决方案4】:

        你可以试试以下两本书:

        对大规模并行处理器进行编程...动手实践方法 (NVIDIA)(第 1 章和第 2 章)

        OpenCL 编程手册...多核 CPU 和 GPU 的并行编程(历史组件)

        两者都详细解释了开发的原因以及在哪里可以找到真正的奖励。

        虽然不确定基准测试,但我自己也没有任何运气。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-11-19
          • 1970-01-01
          • 1970-01-01
          • 2012-08-27
          相关资源
          最近更新 更多