Entries tagged as: GPGPU

Siggraph Asia 2008 technology highlights

Posted by Tony DeYoung on January 19, 2009

For the professional crowd, SIGGRAPH Asia 2008 was really the happening place to find out the latest on workstation graphics products. Although it is a month past, I thought I would point out some of the interesting stuff shown. If you read Chinese you might also want to check out some of the Asian press (nice graphics if nothing else).

So what was shown of particular interest relevant to workstation graphics?

Tags: General, GPGPU

Look for AMD OpenCL-compliant SDK release in first half of 2009

Posted by Tony DeYoung on December 09, 2008

Today the OpenCL CPU+GPU compute standard was ratified by the Khronos Group and AMD announced that it is making good progress on its OpenCL-compliant offering and plans to release a developer version of the ATI Stream SDK v1.4 with support for OpenCL 1.0 for content developers in the first half of 2009. Working from early specifications of OpenCL, AMD’s engineering team has already started running code on its initial implementation.

OpenCL (Open Computing Language), a way to extract computing performance out of GPUs and multicore CPUs in an architecture-independent way. In other words, programmers can use the GPU as a data-parallel coprocessor without having to go through a specialized graphics API like OpenGL or DirectX. OpenCL is designed to address more than GPGPU (general-purpose computing on graphics processing units). It is really a way to enable a broad range of parallel architectures that includes GPUs, multicore CPUs, Larrabee, and even DSPs, to greatly improve speed and responsiveness for a wide spectrum of applications from entertainment to scientific and 3D visualization.

The new ATI Stream SDK 1.4 will add finer grain data type support, graphics API interoperability, multi-GPU support and support for Radeon HD 4870 X2 and several ATI FirePro 3D graphics accelerators

What’s in a name change - FireGL to FirePro name change is more than cosmetic

Posted by Tony DeYoung on December 04, 2008
Change in branding from FireGL to FirePro is more than cosmetic

The name change from FireGL to FirePro is more than just repackaging existing workstation cards with new names. The shift from "GL" to "Pro" reflects ATI's recognition and focus on high-end workstation cards for use in areas other than OpenGL 3D modeling and CAD. The hardware and drivers are still tuned for top OpenGL performance (check out the VBO demo and VBO performance test videos for CATIA), but they are also exposing capabilities for DirectX performance, GPGPU, Video, HPC, industrial design and game design.

OpenCL 1.0 on fast track to release in December 2008, enabling broad range of parallel architectures

Posted by Tony DeYoung on November 06, 2008

HPC has a blog post on the fast track release of OpenCL (Open Computing Language), a way to extract computing performance out of GPUs and multicore CPUs in an architecture-independent way. OpenCL is designed to address more than GPGPU (general-purpose computing on graphics processing units). It is really a way to enable a broad range of parallel architectures that includes GPUs, multicore CPUs, Larrabee, and even DSPs.  Both AMD (with Stream Computing) and Nvidia (with CUDA) strongly support the OpenCL move.

Version 1.0 of OpenCL is on a fast track release schedule for early December at SIGGRAPH Asia 2008 in Singapore. OpenCL is a low level API that should be applicable to high-end workstations, desktop computers, handhelds and embedded devices.

Tags: GPGPU, OpenCL

DirectX 11 and GPGPU support is coming sooner than you think

Posted by Tony DeYoung on October 07, 2008
CirectX 11 is coming soon

You’ve probably already read the news from Ceatec, that ATI graphics accelerators will be supporting DirectX 11, as well as OpenGL.  Given the move by companies like AutoDesk to support DirectX in their professional products over OpenGL, this is a good move by ATI to make sure their hardware and drivers are top-performers regardless of the graphics API.  In any case,  I thought I would cover what we know about DirectX 11 in terms of features relevant to the CAD and professional markets.

Hardware Tessellation
Tesselation has been part of the XBox 360 and Radeon GPUs for years (including the RV7xx). Basically, an object further away will render as a coarse model using fewer triangles because details aren’t need. As the object moves closer to the viewer, the GPU hardware adds more triangles (actually patches and points)  to create a more detailed and refined model. So you can create huge and complex graphics scenes with less overhead, directly in the GPU (think millions of polygons vs thousands) - great for gaming, but also great for complex visualizations and immersive simulations.

Hardware tessellation should also be scalable - so that low end hardware will simply generate less complex models without choking, but both low and high end hardware receive the same data.

Compute Shader
This is the equivalent to CUDA, AMD’s Stream Computing and the OpenCL open standard for parallel general purpose GPU computing tasks (computations traditionally handled by the CPU) such as blur or other special FX. The graphics pipeline will also be able to generate data structures that can better be used to handle general purpose applications. (think physics, scientific computing and raytracing as good examples).

Shader Model 5.0
Shader Model 5.0’s primary enhancement is to help manage the increasing complexity and interactions of shaders. In Shader Model 4, developers often use uber-shaders to manage all of their shaders and conflicts. But this leads to complex code that is both difficult to debug and is also more inefficient in terms of performance. Shader Model 5 essentially introduces subroutines so that developers can create shaders on the fly from common code fragments.

Multi-threading
The purpose of multi-threading is to spread rendering work across many parallel GPU threads to speed up tasks.  It also enables the graphics pipeline to take advantage of dual- and quad-core CPUs for things like aynchronous resource loading.

When will this all happen?
So when will all this happen?  ATI hinted that it will be in the next 12 months - so 2009. And it will be available on Vista and Windows 7 only (not XP).  I would expect to see many applications developers simply jumping past DirectX 10 and moving straight to DirectX 11.

In addition to DirectX 11 support, ATI also indicated they will be strongly supporting OpenCL (Open Computer Language) and that they expect to see more mainstream applications (not just supercomputer/HPC apps) use GPU computing capabilities effectively.

For more reading on DirectX 11, Tom’s Hardware has a good recent summary.

Tags: GPGPU, Hardware

The growing demand for smaller, less power hungry multicore GPUs

Posted by Tony DeYoung on July 17, 2008

With CPUs there was a demand for more power in smaller and less power hungry packages.  The led to the dual core (now quad and eight core) systems. The path will be the same for GPUs - smaller and less power hungry, integrated together.

CrossFire (Radeon) and SLI (GeForce) are solutions for combining multiple GPUs to share the work load when rendering a 3D scene.  The technology is fundamentally simple. Each GPU fully renders the parts of the screen for which it is responsible (be it a whole frame in AFR, the top or bottom half of a screen, or alternating tiles). These results are then combined and output to the screen. The advantages are typically faster rendering at high resolutions, improved anti-aliasing, or an increase in the minimum frame rates in games (See Tom’s Hardware for details)

While these solutions are viable for the games and CAD software that supports them,  they do not scale linearly beyond two GPUs. AMD is supposedly reportedly working on direct GPU to GPU communication hardware in the new multi-GPU solution known as R700.  But how that will work or scale, as well as whether it will include FireGL accelerators, is not yet known.

There are several other interesting solutions in both hardware and software.

On the hardware side of things, LucidLogix Technologies just announced development of a chip that directs portions of a 3D rendering task to particular GPUs that have spare cycles.  What makes this interesting is that you should achieve near-linear performance increases as you add more GPUs.  The pre-processing chip will work with both AMD and Nvidia GPUs. Several smaller, lower-power, lower-performance GPUs may end up providing bigger bang for the buck then larger, energy hungry GPUs

For OpenGL visualization software, Equalizer offers an API for parallel rendering techniques. With this toolkit, one or more OpenGL rendering threads execute in parallel to the application thread, providing scalable performance for OpenGL-based rendering on multicore architectures.

Regardless of the the particular solution, multi-GPUs is certainly the wave of the future for professional 3D rendering. 

Tags: 3D, GPGPU, Hardware

AMD Stream Computing and Nvidia CUDA - similar but different

Posted by Tony DeYoung on June 19, 2008

CUDA vs AMD Stream Computing - both are APIs that let GPUs like the FireGL or Quadro, handle non-graphics compute applications in parallel.  The benefit of GPU computing stems from the highly parallel architecture of the GPU whereby tens to hundreds of parallel operations are performed with each clock cycle whereas the CPU can at best work only a small handful of parallel operations per clock cycle. CUDA and Stream differ in one significant way.  AMD has published their interfaces for Stream from lo to hi level.  AMD’s Brook+ (the Stream Compiler) is completely open source, while Nivida’s CUDA is proprietary.  The AMD Stream Compute Abstraction Layer (CAL), the run-time driver layer and intermediate language, is also published so developers can program at either the CAL or Brook+ level - their choice. Finally AMD publishes the instruction set architecture so developers can tune low-level performance.

Publishing APIs at all levels is good for developers and ultimately good for consumers. The move to open standards with the new Heterogeneous Computing Initiative supporting OpenCL (Open Computing Language), will be a good move for both AMD and NVIDIA.  The idea is that an application developer would write an OpenCL-based stream computing application, and it would run on any GPU or CPU with an OpenCL driver. Both AMD and Nvidia have indicated they want to support this new standard.

OpenCL is still evolving, but AMD’s director of Stream Computing, Patricia Harrell says that there are enough structural similarities to Brook+ that FireStream programmers shouldn’t find it too difficult to make the transition.  It will be a while, but in the not too distant future, our graphics accelerators will suddenly be capable of doing a lot more interesting things.

FireStream 9250 breaks the one teraflop barrier for single precision performance

Posted by Tony DeYoung on June 15, 2008
This is just plain cool.
AMD FireStream 9250 empowers high-performance computing (HPC) by including a second-generation double-precision floating point hardware implementation, thereby ‘breaking the one teraflop barrier for single precision performance’ and delivering more than 200 gigaflops, racing ahead the performance put up by FireStream 9250’s predecessor FireStream 9170. The series of FireStream is also open to developers to accelerate and elevate AMD FireStream, ATI FireGL, ATI Radeon and GPUs; via the AMD Stream SDK.

While the announcement is initially aimed at the High Performance Computing (HPC) community, AMD is also focused on making this power available to a broader audience. To make the GPGPUs easier to program and help developers to access and enhance on the tools, AMD has published interfaces for its high-level API language, intermediate language, and instruction set architecture; and the AMD Stream SDK’s Brook+ front-end, which are available as open source code.

The v1.1 Stream SDK Beta is available for download.
Page 4 of 4 pages « First  <  2 3 4

Close