通用图形处理器
利用处理图形任务的图形处理器来计算原本由中央处理器处理的通用计算任务
通用图形处理器(General-purpose computing on graphics processing units,简称GPGPU),是一种利用处理图形任务的图形处理器来计算原本由中央处理器处理的通用计算任务。这些通用计算常常与图形处理没有任何关系。由于现代图形处理器强大的并行处理能力和可编程流水线,令流处理器可以处理非图形数据。特别在面对单指令流多数据流SIMD),且数据处理的运算量远大于数据调度和传输的需要时,通用图形处理器在性能上大大超越了传统的中央处理器应用程序
主要功能
通用图形处理器(general-purpose graphics processing unit, GPGPU)是一种近年来出现的计算机芯片,它给航空航天以及防务应用中的高性能嵌入式计算带来了重大突破。这种功能强大的芯片是在前一个十年里作为高端计算机游戏图形处理引擎引入的,是一种大规模并行处理器。它不仅有助于复杂的浮点计算处理,而且容易编程,对于广泛的嵌入式军用系统颇具吸引力。
同时,通用图形处理器技术的进展基本上符合摩尔定律,也就是说,通用图形处理器的处理能力每2年提高1倍,而尺寸每2年减小一半。现在美国的通用图形处理器芯片的主要设计制造商有加利福尼亚州圣克拉拉的NVIDIA公司和加利福亚州桑尼维尔的先进微型器件公司(AMD公司)。AMD公司的通用图形处理器的专门技术中,大多来自于它2006年并购的位于加拿大安大略省马克姆的ATI技术公司
设计优势
通用图形处理器技术在航空航天和防务数字信号处理中得到越来越广泛的使用,包括“开放性图形库”( Open Graphics Library, OpenGL)语言、NVIDIA公司创造的并行处理编程语言CUDA和最近出现的“开放性计算语言”( Open Computing Language, OpenCL)在内的软件编程语言在其中起到了相当大的作用。
在OpenGL, CUDA和OpenCL这些软件编程语言出现之前,大规模并行处理计算机的编程是一项困难的任务,只有为数不多的专家采用神秘的编程语言才能够完成。这些新出现的软件编程语言,尤其是OpenCL有助于熟悉C语言和C++语言的程序编制人员接受通用图形处理器技术。而且,OpenCL仍在进一步开发之中,最终可能会在通用图形处理器、CPUFPGA中通用。这样的开发有助于在将来开发涉及到CPU、FPGA和通用图形处理器组合运用的嵌入式计算结构体系,全部用同样的软件语言编程和维护。库图尔认为,通用图形处理器和FPGA不会直接而且迅速发生变化,因此CPU能够在其中发挥重要作用,使得通用图形处理器、CPU和 FPGA可以作为一种开放性的芯片来编程。
通用图形处理器的开放性软件库的内容也在增加,使得通用图形处理器的软件得到更为广泛的应用。现在也有许多Linux操作系统可以供下载和增加通用图形处理器的材料。据斯坦说,已经采用FPGA和DSP之类的器件展开了多种类型的嵌入式计算方面的工作,这些系统采用一些专门化的处理技术。通用图形处理器所使用的开放性的编程语言使情况发生了很大变化。虽然通用图形处理器的编程类似于FPGA和DSP,但是使用OpenCL来编程,其专门化的程度就比较低了。
此外,通用图形处理器的编程软件也有助于它在嵌入计算中的发展。在通用图形处理器中,多个处理核规则地排列在一起,因此随着时间的推移,器件中处理核的数量会越来越多,但是通用图形处理器的软件没有必要随着处理核数量的增加而重新编写。
技术原理
即使表面上看来运用通用图形处理器进行数字信号处理并没有利用其图形处理能力,但是此类器件的图形特性对于图像装置、雷达、声纳信号情报以及其它进行复杂计算的装置中的信号处理具有根本性的影响。斯坦对此的解释是,将通用图形处理器应用于信号处理是使图形卡逆向运行。富兰克林说,通用图形处理器可以用来解析事物以得到可利用的信息,传递周围环境中的有用材料。通用图形处理器所擅长的是完成两方面的工作,一是表现事物,二是解析事物。
通用图形处理器为军用信号处理应用系统的设计人员提供了可以利用的图形处理技术,几乎免费地得到了极大的嵌入式并行处理能力。通用图形处理器在航空航天和防务应用中的增长正是将现成的商用技术用于军事技术领域的实例。富兰克林说,图形处理器的主要应用仍然是图形处理,虽然图形处理器制造商在计算机游戏中所挣的美元数以十亿计,但是像NVIDIA那样的公司每研发一个系列的图形处理器都要投入20亿美元的成本。
现在,不仅通用图形处理器芯片的应用领域从单一的图形处理装置扩展到了信号处理装置,而且通用图形处理器的软件编程语言也在向着信号处理和通用处理扩展。类似于“开放性图形库”( OpenGL)那样的图形处理语言就可以用于通用处理。
最新修订时间:2023-02-12 01:56
目录
概述
主要功能
参考资料