Single page Print

PeakStream makes GPU-based HPC accessible
Next up was Michael Mullany, VP of Marketing for PeakStream. This brand-new company has built a set of software tools to serve the high-performance computing (HPC) market, which is where big, high-margin players like oil and gas companies, automakers, and aerospace firms reside. PeakStream believes GPUs can bring strong outright performance, solid performance per watt, and good performance per square foot of space in the data center.


To capitalize on that opportunity, PeakStream's software platform plugs into standard development tools like gcc and the Intel compilers to allow applications nearly transparent access to GPU computational power. PeakStream's profiler determines whether the code being executed is a good fit for a particular type of processor, and their virtual machine provides a layer of abstraction from the execution hardware. Code that's been profiled and fed into the VM may wind up being executed on an x86 processor, Sony's Cell processor, or a GPU, depending on its needs.


Mullany showed a demo that PeakStream developed while working with Hess, a large U.S. oil and gas producer, on a seismic analysis algorithm. This algorithm analyzes the echoes created by controlled explosions on the surface of the earth in order to determine the shape of the rock layers and other features beneath the ground. The analysis ran about 15 times as fast with the GPU as it did on the CPU alone, which Mullany explained would allow for new levels of resolution or new types of analysis.

Mullany said PeakStream is working with customers on a range of applications, from financial firms wishing to price derivatives to academics simulating fluid dynamics. In one instance, he said, PeakStream stepped into a project where a defense contractor was using a GPU to do signal processing in a mobile application. With its software, PeakStream was able to deliver a five-fold performance improvement.

That example perhaps best illustrates the potential value of PeakStream's product. ATI has documented some of the workings of its GPUs for developers to use, but doesn't really provide a robust set of tools that will allow developers to write programs in high-level languages and then compile them for the GPU. Partners like PeakStream will be very important if ATI is to make its stream computing push a success.

Microsoft pledges support
Speaking of important partners, Microsoft sent a rep to the event, as well. Chas Boyd, an Architect in Microsoft's Graphics Platform Unit, spoke briefly about Microsoft's support for non-traditional uses of GPUs in Windows. Boyd showed off a Windows Vista image editor that handles image processing operations on the GPU rather than the CPU, making photo editing a much quicker task. He also talked about using GPUs to handle graphical problems in a non-graphical way.


You'll note that the demo scene above has lots of dense grass in it. This kind of detailed vegetation can cause problems for renderers, because determining which blade of grass is in front of the others is notoriously difficult. Boyd said that by using a prefix sort algorithm running on the GPU, this app is able to determine quickly and correctly the proper polygon depths and render the image correctly. The result is higher image quality, but it comes by using the GPU as a general-purpose processor.

Boyd said more parts of Microsoft are becoming more engaged with GPUs as these sorts of uses expand. The entire Vista Aero user interface now runs on a GPU, and he noted that physics interactions, particles, fluids, and the like are being mapped successfully to GPUs using DirectX. Over time, he claimed, Microsoft will be evolving the DirectX API to facilitate such things—from DirectX 10 forward.