The power of graphics processors is being exploited by software companies and researchers to run tasks once the preserve of supercomputer and high-performance graphics workstation. As Cliff Saran discovers, this technology is becoming increasingly mainstream.
Earlier this month, Dassault Systèmes released Abaqus 6.11, the latest version of its unified finite element analysis (FEA) product suite. Significantly, the product makes use of Nvidia Quadro and Tesla GPUs, coupled with CPUs. Dassault Systèmes claims this allows users to run computer-aided engineering (CAE) simulations twice as fast as with CPUs alone. Two European carmakers are evaluating the new version of Abaqus FEA to analyse the structural behaviour of large engine models.
Such analysis would previously require vast arrays of processors (CPUs). But today it is possible to buy high-end AMD Radeon and Nvidia graphics processors (GPU), which have been designed for gaming, and program them directly.
Users do not even need to buy their own hardware. Peer 1 offers a GPU cloud-based on Nvidia graphics processors, together with software - all available as a private cloud or as a software service, billed per hour or per day.
Robert Miggins, senior vice-president, business development, Peer 1 Hosting says there has been growing interest in the service, particularly in application areas like 3D rendering, Monte Carlo simulations (used in financial markets), geo-spatial analysis in the oil and gas industry and medical research. Robert Miggins said: "We are seeing the biggest growth in rendering and banking."
John Ladbrook, technical director, MiGenius, a company which specialises in 3D tools to aid collaboration, is using Peer 1's service which includes RealityServer, a 3D web application platform from mental images to help clients visualise building designs.
"The quality of rendering [an architectural design] is particularly good," says Ladbrook. "All the surfaces are physically accurate so you can look at how lighting intensity affects the space. Traditionally it would have taken 25 minutes to render the design, but with Peer 1 rendering takes a few minutes." This means it is possible for Ladbrook to enable clients to visualise the 3D model of a building, pan and zoom into areas without having to run sophisticated computer aided design software on their own computers. The user interface provided by RealityServer means that almost anyone with a browser and internet connection can collaborate on a design project.
He said: "One of our clients is using the service to assess the flow of air conditioning around a room. Previously, the client would not have been able to visualise this at all."
Margaret Lewis, director of commercial solutions and software at AMD, says that several of the company's cloud customers are exploring using GPUs in the cloud. In particular, encoding, decoding and transcoding high definition video content is one application area well-suited to GPUs.
Programming a GPU architecture is also being simplified thanks to an industry effort to standardise the OpenCL extension to the C programming language. This is hardware-independent, which enables general purpose applications (ie not graphical) written in OpenCL can work both on AMD and Nvidia GPUs.
So will the GPU replace the PC's CPU? The GPU is not good for all applications. According to Leendert van Doom, corporate vice-president and software architect at AMD: "The GPU is good at recognising faces, but it is not good at any application that requires design branches. So it is not good at matching faces. This is because the GPU works on processing streams. Decision-making (ie running a bit of code (ie a different branch of code) if certain criteria are met) is better suited to a CPU."
In mid June AMD is showcasing some of the latest applications making use of GPU. These include some unlikely products, such as a database engine. Given the limitations of the GPU, however, the future direction of GPU applications will inevitably lead to hybrid hardware architectures that make use of both the GPU and the CPU.