VME and Critical Systems Spring 2010 : Page 13embedded programmers. The environ- ment is based on graphics primitives – not high-level language constructs or even CPU assembly variants. And the basic structure of programming tools for GPUs does not offer the optimizations that programming languages for CPUs do. GPGPUs are a relatively recent concept of GPU computing, offering a developer-friendly software environment. Software developers can now program GPGPUs with familiar constructs such as well-defined APIs and indexed matrix operations. Historically, GPUs have not been easily upgradeable; they have been discrete components soldered directly onto the printed circuit boards. Upgrading the chip as new versions become available would require a complete board respin. Many of today’s GPGPUs (from ATI, NVIDIA, and others), however, are available in a mobile PCI Express module (MXM): an easy-to-insert format that facilitates upgrades when new, faster GPGPUs are available. Adherence to the MXM speci- fication, developed by NVIDIA and now a stand-alone specification, ensures easy upgradeability for technology updates. GPGPUs: A natural fi t for high-performance embedded applications A high GFLOPS/Watt ratio, parallel processing capabilities, and a program- mable software environment and upgrade- ability are all now available with today’s GPGPUs. The application space in high- duration aspect of persistent surveillance demands minimal power consumption. Meanwhile, the intense computational aspect of onboard exploitation, including image stabilization and geo-registration, requires parallel processing – such as that provided by GPGPUs – to provide real-time, actionable information to the warfighter. The missing link is a platform or environ- ment that can support experimentation and algorithm tradeoffs. One such link is Mercury’s Sensor Stream Computing Platform (SSCP, see Figure 1), a 6U VXS-development chassis that is the size of a piece of carry-on luggage, weighs 32 pounds, draws less than 600 W from a standard wall outlet, and achieves 3.84 TFLOPS (see Figure 2). The SSCP tunable power/performance operation allows the user dial-down GPU clock speed to mini- mize power consumption during periods of inactivity, as is required for persistent sur- veillance and similar applications. CS Figure 1 | The Sensor Stream Computing Platform performance embedded computing for defense is clearly defined. As mentioned, several applications in the high-performance embedded com- puting space could benefit from the use of GPGPUs. Persistent surveillance – an unmanned aerial vehicle application char- acterized by long mission duration and onboard sensor data exploitation – is a par- ticularly good example. The long mission Anne Mascarin is a Product Marketing Manager at Mercury Computer Systems, where she has been employed for five years. Previously, she worked at The MathWorks and Analog Devices, Inc. Anne holds a Master of Science in Electrical Engineering from North- eastern University and a Bachelor of Arts in Economics from Boston University. She can be contacted amascari@mc.com. Scott Thieret is the Technical Director for GPU Computing at Mercury Computer Systems, where he has been employed for 10 years in various positions dedicated to GPU development. Prior to Mercury, he worked at Avid, MITRE, and IBM. Scott holds a Bachelor of Science in Computer Engineering from the University of Vermont. He can be contacted at sthieret@mc.com. Figure 2 | Sensor Stream Computing Platform: Peak FLOPS versus GPU clock rate Mercury Computer Systems 866-627-6951 www.mc.com VME and Critical Systems / Spring 2010 13 Publication List |


