Channels ▼
RSS

C/C++

GPUs Are Good For More Than Gaming



Video gaming computers and video game consoles available today typically contain a graphics processing unit (GPU), which is very efficient at manipulating and displaying computer graphics. However, the unit's highly parallel structure also makes it more efficient than a general-purpose central processing unit for a range of complex calculations important to defense applications.

Researchers in the Georgia Tech Research Institute (GTRI) and the Georgia Tech School of Electrical and Computer Engineering are developing programming tools to enable engineers in the defense industry utilize the processing power of GPUs without having to learn the programming tools required to use them directly.

"As radar systems and other sensor systems get more complicated, the computational requirements are becoming a bottleneck," says senior researcher Daniel Campbell. "We are capitalizing on the ability of GPUs to process radar, infrared sensor and video data faster than a typical computer and at a much lower cost and power than a computing cluster."

Mark Richards, a principal research engineer and adjunct professor in the School of Electrical and Computer Engineering, is collaborating with Campbell and graduate student Andrew Kerr to rewrite common signal processing commands to run on a GPU. This work is supported by the U.S. Defense Advanced Research Projects Agency and the U.S. Air Force Research Laboratory.

The researchers are writing functions defined in the Vector, Signal and Image Processing Library (VSIPL) to run on GPUs. VSIPL is an open standard developed by embedded signal and image processing hardware and software vendors, academia, application developers and government labs.

The researchers are currently writing the functions in Nvidia's CUDA but the underlying principles can be applied to GPUs developed by other companies, according to Campbell. With GPU VSIPL, engineers can use high-level functions in their C programs to perform linear algebra and signal processing operations, and recompile with GPU VSIPL to take advantage of the speed of the GPU. Studies have shown that VSIPL functions operate between 20 and 350 times faster on a GPU than a central processing unit, depending on the function and size of the data set.

"The results are not surprising because GPUs excel at performing repetitive arithmetic tasks like those in VSIPL, such as signal processing functions like Fourier transforms, spectral analysis, image formation and noise filtering," noted Richards. "We've just alleviated the need for engineers to understand the entire GPU architecture by simply providing them with a library of routines that they frequently use."

The research team is also assessing the advantages of GPUs by running a library of benchmarks for quantitatively comparing high-performance, embedded computing systems. The benchmarks address important operations across a broad range of U.S. Department of Defense signal and image processing applications.

Preliminary studies have shown several of the benchmarks have straightforward parallelization schemes that result in faster operation without requiring significant optimization. For other benchmarks, additional research needs to be conducted into optimizing the use of multiple GPUs.

For the future, the researchers plan to continue expanding the GPU VSIPL, develop additional defense-related GPU function libraries and design programming tools to utilize other efficient processors, such as the cell broadband engine processor at the heart of the PlayStation 3 video game console.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video