Brahma is an open source shader meta-programming framework for the .NET platform that generates shader code from IL at runtime, enabling developers to write GPU code in C# (or any NET language). The library is primarily meant to handle GPU-based rendering and computational tasks, and eliminates a great deal of glue code that is often required in GPU programming. Since Brahma is a set of interfaces and base classes, it can be implemented for any combination of API and shading language. At this time there is a working shader generation path for Managed DirectX/HLSL. (http://brahma.ananthonline.net)
This tutorial explains how global illumination rendering methods can be implemented on Shader Model 3.0 GPUs. These algorithms do not follow the conventional local illumination model of DirectX/OpenGL pipelines, but require global geometric or illumination information when shading a point. In addition to the theory and state of the art of these approaches, the tutorial goes into the details of a few algorithms, including mirror reflection, refraction, caustics, diffuse/glossy indirect illumination, precomputation-aided global illumination for surface and volumetric models, obscurances and tone mapping, also giving their GPU implementation in HLSL or Cg language. (Laszlo Szirmay-Kalos, Laszlo Scecsi, Mateu Sbert: GPUGI: Global Illumination Effects on the GPU. Eurographics 2006 Tutorial.)
Aaron Lefohn announces the release of version 1.5 of his OpenGL FBO Class. This release includes the following changes:
- Updated enumerations in error checking to match current FBO specification.
Fixes compilation errors with current drivers.
- Small API change to AttachTexture to better support attaching multiple
textures with a single entry point.
- Added FBO Manager for managing a pool of FBOs based on width, height, and
format. Manager is configurable to use user-defined management policies/keys.
(Available on sourceforge.)
Wired magazine has published an article about GPGPU by Paul Tulloch called “Supercomputing’s Next Revolution”. The article discusses recent results from the Stanford Folding@Home project and the UNC Gamma Group, whose most resent results will be presented next week at Supercomputing 2006 in Tampa, Florida.
NVIDIA Corporation today unveiled NVIDIA CUDA technology, a new architecture for computing on NVIDIA GPUs, and the industry’s first C-compiler development environment for the GPU. From the NVIDIA Press Release:
GPU computing with CUDA is a new approach to computing where hundreds of on-chip processor cores simultaneously communicate and cooperate to solve complex computing problems up to 100 times faster than traditional approaches. This breakthrough architecture is complemented by another first: the NVIDIA C-compiler for the GPU. This complete development environment gives developers the tools they need to solve new problems in computation-intensive applications such as product design, data analysis, technical computing, and game physics. CUDA-enabled GPUs offer dedicated features for computing, including the Parallel Data Cache, which allows 128, 1.35 GHz processor cores in newest generation NVIDIA GPUs to cooperate with each other while performing intricate computations. Developers access these new features through a separate computing driver that communicates with DirectX and OpenGL, and the new NVIDIA C compiler for the GPU, which obsoletes streaming languages for GPU computing.
CUDA website: http://www.nvidia.com/cuda
Please join us next week in Tampa, Florida at Supercomputing 2006 for a full-day GPGPU Tutorial on Sunday, November 12 2006. This is the continuation of a series of well-regarded courses presented at the SIGGRAPH and IEEE Visualization conferences. The course at SC06 has been updated for the Supercomputing audience with the latest results and techniques. Then, on Monday November 13, plan to attend the SC06 Workshop, “General-Purpose GPU Computing: Practice and Experience”. This workshop features invited speakers and poster presenters who provide insights into current GPGPU practice and experience, and chart future directions in heterogeneous and homogeneous multi-core processor architectures and data-parallel processor architectures such as GPUs.
Graphic Remedy is proud to announce the release of gDEBugger Version 3.0. This new major version supports OpenGL V2.1 standards and contains ATI Hardware Performance Counters (Percentage Hardware busy, Transform Clip Lighting unit busy, etc.) integration. These counters are displayed in the Performance Graph and Performance Dashboard Views. V3.0 also adds the option for Floating Licenses with a dedicated License Server. The new version can be downloaded from http://www.gremedy.com/download.php.
A multi-view stereo evaluation has been proposed by Steve Seitz et al. The challenge involves recovering 3D reconstructions of complete objects from a large number of views. Among the reported techniques, two out of nine make an intensive usage of GPUs, both yielding large speedups: the work by Pons, Keriven and Labatut that took part in the original competition at CVPR06, and the work by Hornung and Kobbelt. Running times, accuracy and completeness of the methods are reported here. (Steve Seitz et al. A Comparison and Evaluation of Multi-View Stereo Reconstruction Algorithms, in IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), New York, 2006.)
This white paper from RapidMind and HP compares the performance of BLAS dense linear algebra operations, the FFT, and European option pricing on the GPU against highly tuned CPU implementations on the fastest available CPUs. All of the GPU implementations were made using the RapidMind Development Platform, which allows the use of standard C++ programming to create high-performance parallel applications that run on the GPU. The full source for the samples is available in conjunction with a new beta version of the RapidMind development platform. The results will also be presented as a poster at SC06.
PeakStream, Inc., a leading software application platform provider for the high performance computing (HPC) market, today unveiled the PeakStream Platform. Available immediately, the PeakStream Platform makes it possible to easily program new high performance processors such as multi-core CPUs, graphics processing units (GPUs) and Cell processors, converting them into radically powerful computing engines for exponentially increased application performance and decreased time-to-solution at reduced cost. The company also announced the completion of equity financing totaling $17 million from Kleiner Perkins Caufield & Byers, Sequoia Capital and Foundation Capital. (www.peakstreaminc.com)