2010-07-09 87 views
4

我一直在阅读CUDA和OpenCL,并了解到在这些框架之前开发人员只能使用OPENGL和D3D等低级API。不幸的是,我一直无法找到关于它的很多信息。CUDA和OpenCL之前的GPGPU

这是一个广泛的或商业的实践,或者它只是他们在研究和军事实验室中使用的东西?我确信这里有人会有早期的GPGPU编程经验。

+0

对于GPGPU用途,人们仍然使用cg或GLSL,例如在CUDA或OpenCL不可用的移动环境中。 – ther 2012-05-19 09:30:18

回答

4

在CUDA和OpenCL出现之前,有很多GPGPU方法,例如, BrookCg编程语言。

+0

这两种方法看起来都非常有用,尽管我可以看到游戏的大部分应用程序。我仍然想知道为什么它们不像CUDA和OpenCL那样用于其他通用计算。也许与语言本身无关,而是与没有看到其他类型应用程序的潜力的人相关。 对于我读过的文章,没有加速和新方法一样好,所以也许还有技术上的原因(没有真正值得吗?)。猜猜我必须继续阅读它们。 – kirbuchi 2010-07-11 05:47:45

+1

当时GPU的灵活性较差,因此适用于比当前GPU小得多的应用程序子集。最近,GPU已经获得了更多的通用功能,并且CUDA和OpenCL的引入使得开发相对容易。我想CUDA真的是GPGPU应用程序的“引爆点”。 – 2010-07-11 08:02:56

3

它主要用于研究。当然,一些GPGPU技术被应用于需要在屏幕和游戏中放置像素的软件,但大多数情况下它是一种研究方法。

3

如果您对历史感兴趣,我认为让人们认识到GPGPU的最早的论文之一是当时一些SGI人士的SIGGRAPH 2000论文“交互式多通道可编程阴影”。这个想法是,他们可以将任何RenderMan着色语言着色器翻译成一系列OpenGL调用(加上一些扩展)。关于这一点的令人惊叹的部分是它根本不使用可编程着色器 - 它都基于为混合方程设置正确的参数并使用很多遍。数值精度是可笑的(8位或16位定点),但使用图形硬件来计算的想法就在那里。

从那一刻起,他们可以做更漂亮的每像素的东西,再加上硬件的改进,很快就导致了GPGPU流体流动解决方案在2003年左右。这是关于大家集体面对巨大黑客攻击的时间,导致CUDA和OpenCL。

+0

非常好!我会看看。 – kirbuchi 2010-07-18 10:48:36