应该使用OpenCL重写哪种应用程序?

时间:2009-12-18 02:14:48

标签: c++ c osx-snow-leopard performance opencl

Mac OS X 10.6附带OpenCL,但如果将它们重写为使用OpenCL,有多少应用程序可以获得更好的性能?应该使用OpenCL重写哪种应用程序?

3 个答案:

答案 0 :(得分:3)

我公司正在使用OpenCL进行科学计算。虽然我不是使用它的开发团队的一员,但我可以告诉你一些他们正在使用它的事情:图像的大规模数据处理,想象重建,以及大规模并行化以前编写的科学代码。

基本上,OpenCL相当先进。除非你想/必须处理它,否则最好留给那些需要它的人。我不是想劝阻你,但它是为利基市场设计的利基产品。为了潜在的就业目的,你可以更好地学习其他编程领域。

答案 1 :(得分:2)

OpenCL不是一个神奇的“增加性能”按钮。为了获得性能提升,需要满足几个先决条件,第一个是适当的硬件(Tesla GPU有帮助)。对于可以从中受益的软件,它可以执行大量并行计算。这排除了大多数“日常”软件,并留下了图形处理应用程序(渲染器,图像处理程序),可以并行运行的大型数据处理应用程序以及科学应用程序。

通常,如果您编写的应用程序可以从OpenCL中受益,您知道您已经从中受益;)。

答案 2 :(得分:2)

首先,您不能使用OpenCL“重写”整个应用程序。您仍需要GUI等“普通”语言。

使用OpenCL可以加速非常大的数据并行问题。大多数问题都不属于这一类。

最有希望的候选者是图形/视频和声音处理。但是,需要对大量数据进行相同操作的每个问题都是合适的。