CUDA的应用与案例详解

时间:2008-11-29   来源:   网友评论:0   人气: 1247 作者:

浪费时间=浪费生命,CUDA延长你的寿命

  曾经,笔者的一个从事网页设计工作的美工朋友给我讲过一个笑话,他们单位为了某大型宣传活动,准备设计一个巨型的条幅广告,而条幅广告的设计任务自然是他们美工的责任。不过,具体负责设计的不是我的朋友,而是他的几个同事。

  根据我朋友的叙述,两位同事,同时为这个巨型的条幅广告进行设计,并且配备了单位最好的电脑来进行处理,但是,由于巨型的条幅广告尺寸过大,仅仅一个简单的渲染过程就要等待半个小时甚至最长长达一上午的时间。导致朋友的同事一天下来,仅仅能够进行简单的几部操作,而剩下的事情几乎全部是坐在电脑前等待……

  可是,不知道读者是否能够想象得到,这些漫长的等待,如果使用拥有强大浮点运算能力的GPU来进行这些运算的话,仅仅需要几分钟甚至几秒钟,更甚至能够做到所见即所得的形式,这将会大幅度的提高工作时的工作效率。如果刚才我们所说的笔者朋友的同事能够拥有这样的设备的话,有可能这样一个巨型的条幅广告仅仅需要一个上午的时间就能够全部完成了。

  ◆CUDA,让你梦想成真:

  CUDA,如今这个名词越来越多的出现在了我们的眼里。虽然说,目前来看,CUDA可能和我们目前的电脑应用并没有太明显的关系,不过相信随着未来越来越多的软件支持,CUDA最终将会走入我们每个人的电脑应用当中。前面我们说的那个例子,虽然现时来看并不太可能实现,不过,我们却很有可能在下一代的PhotoShop当中看到这一功能付诸实践。

你真的了解吗?CUDA的应用与实战详解

  『通过GPU加速,图像的渲染和处理将大大加快』

 在Photoshop Creative Suite Next上通过GPU、物理加速的支持。Photoshop打开一个2GB、4.42亿像素的图像文件将非常简单,对图片进行缩放、旋转也不会存在任何延迟。这就是GPU的强大运算能力的体现,而想要实现这一功能,则需要借助于一个接口——CUDA。

  ◆CUDA是什么?

你真的了解吗?CUDA的应用与实战详解

  CUDA(Compute Unified Device Architecture)是一个新的基础架构,这个架构可以使用GPU来解决商业、工业以及科学方面的复杂计算问题。它是一个完整的GPGPU解决方案,提供了硬件的直接访问接口,而不必像传统方式一样必须依赖图形API接口来实现GPU的访问。

  在架构上采用了一种全新的计算体系结构来使用GPU提供的硬件资源,从而给大规模的数据计算应用提供了一种比CPU更加强大的计算能力。CUDA采用C语言作为编程语言提供大量的高性能计算指令开发能力,使开发者能够在GPU的强大计算能力的基础上建立起一种效率更高的密集数据计算解决方案。

  CUDA诞生的意义以及CUDA的应用领域

  ◆CUDA诞生的意义:

  在传统的发展路线中,电脑显示卡一直在为游戏和3D应用程序服务,但是竞争的激烈、技术的飞速前进客观的成就了GPU的爆炸式发展。GPU的运算能力已经达到了非常高的水平,甚至在浮点运算能力上已经大幅度超越最高级别的处理器产品。

  研究表明,从1993年开始,GPU的性能以每年2.8倍的速度增长,这个数字大大超过了PC其他子系统的发展速度。一块工作频率为3.0GHz的Pentium 4处理器,其晶体管数目为1.25亿个,即使算上SSE指令集的SIMD(单指令并发多数据流,这种情况是浮点吞运算下吐能力的最理想状况),也只有6GFlops的峰值浮点处理能力,而同期的一块NV40 GPU就有2.22亿个晶体管,峰值浮点运算能力很轻易超过40GFlops,而时间发展的今日,GPU的峰值浮点运算能力已经接近甚至超过了TFlops(1000GFlops)级别,GPU的性能可想而知

 

  除此之外,GPU还拥有自己的独立子存储系统——显存,它拥有比系统主内存高得多的带宽。Intel曾经为它的Pentium 4 XE系列处理器所拥有的1066MHz前端总线所提供的8.6GB/S的带宽倍感自豪,而同期一块普通的GeForce 6800就拥有20GB/S以上的显存带宽。

你真的了解吗?CUDA的应用与实战详解

  『GPU一直在促进游戏画面的进步,客观上造就了自身强大的


 

相关文章

文章评论