CUDPP is the CUDA Data Parallel Primitives Library for NVIDIA CUDA. CUDPP is a library of data-parallel algorithm primitives such as parallel-prefix-sum (“scan”), parallel sort and parallel reduction. Primitives such as these are important building blocks for a wide variety of data-parallel algorithms, including sorting, stream compaction, and building data structures such as trees and summed-area tables. The first beta release of CUDPP is now available, as is the searchable online documentation.
The CIGPU-2008 special session on computational intelligence using consumer games and graphics hardwareNovember 5th, 2007
The CIGPU-2008 special session on computational intelligence using consumer games and graphics hardware invites submissions of novel scientific and engineering applications of GPUs. Papers submitted for special sessions will be peer-reviewed with the same criteria used for the contributed papers. Submission deadline is 7 January 2008. (WCCI-2008 Special Session Computational Intelligence on Consumer Games and Graphics Hardware CIGPU-2008)
From the introduction: “Processors architecture is evolving towards more software-exposed parallelism through two features: more cores and wider SIMD ISA. At the same time, graphics processors (GPUs) are gradually adding more general purpose programming features. Several software development challenges arise from these trends. First, how do we mitigate the increased software development complexity that comes with exposing parallelism to the developer? Second, how do we provide portability across (increasing) core counts and SIMD ISA? Ct is a deterministic parallel programming model intended to leverage the best features of emerging general-purpose GPU (GPGPU) programming models while fully exploiting CPU flexibility. A key distinction of Ct is that it comprises a top-down design of a complete data parallel programming model, rather than being driven bottomup by architectural limitations, a flaw in many GPGPU programming models.” (Flexible Parallel Programming for Terascale Architectures with Ct)
This paper by Moss et. al shows an implementation of multi-precision arithmetic running on a 7800-GTX. The paper shows how to compute the modular exponentiation of large integers (a central operation in the RSA cryptosystem) using the restricted control flow available on a DX9 card. Both the background number theory used to express the problem in a suitable way for a streaming architecture, and the program transformation techniques used to generate the GLSL code are described in detail. Surprisingly (given the unusual nature of the problem for GPGPU) the GPU is capable of out-performing the CPU over a large enough dataset by a factor of 2x-3x depending on the CPU implementation. Unfortunately the immature state of the GLSL compiler prevents a further 2x improvement by allocating too many registers, and the large latency for setting the problem up means that over 800 exponentiations need to be performed to break-even against the CPU. (Andrew Moss, Dan Page and Nigel Smart. Toward Acceleration of RSA Using 3D Graphics Hardware. In: LNCS 4887, pages 369–388. Springer, December 2007.)
Physically correct acoustic simulations for complex and dynamic environments remain a difficult and computationally extensive task. Graphics hardware is here used for the simulation of sound wave propagation. Two different methods have been implemented, of which one uses ray tracing techniques, while the other is based on difference equations and waveguide meshes. Both techniques can efficiently be implemented within a real-time environment by concentrating on the similarities for sound and light wave propagation, and by exploiting the possibilities of using graphics hardware for non-graphics computations. Applications are discussed for real-time room acoustics, virtual reality as well as for virtual HRIR measurements based on polygonal meshes.
(Ray Acoustics using Computer Graphics Technology. Niklas Röber, Ulrich Kaminski, and Maic Masuch. Proceedings of DAFx 2007.)
(Waveguide-based Room Acoustics through Graphics Hardware. Niklas Röber, Martin Spindler, and Maic Masuch. Proceedings of ICMC 2006.)
The Workshop on General Purpose Processing on Graphics Processing Units will be held October 4, 2007 at Northeastern University, Boston, MA. This meeting will include a keynote talk by Prof. Wen-mei Hwu on “GP Computing: Hardware, Architecture Tools and Education”.
The program will include three invited talks from NVIDIA, ATI and IBM Research, and will include demos by GPU hardware and software vendors. The technical program will include 12 refereed papers. Registration is free, though you need to register for The Workshop on GPGPU at: http://censsis-db3.ece.neu.edu/RICC2007/regist.aspx
Commercial companies that are interested in presenting at The Workshop on GPGPU, please contact the organizing committee at firstname.lastname@example.org.
GPU Gems 3, the third volume of the best-selling GPU Gems series provides a snapshot of today’s latest Graphics Processing Unit (GPU) programming techniques. The programmability of modern GPUs allows developers to not only distinguish themselves from one another but also to use this awesome processing power for non-graphics applications, such as physics simulation, financial analysis, and even virus detectionâ€”particularly with the CUDA architecture. Graphics remains the leading application for GPUs, and readers will find that the latest algorithms create ultra-realistic characters, better lighting, and post-rendering compositing effects. This third volume is certain to appeal to not just the many fans of the first two, but a whole new group of programmers as well. (GPU Gems 3 Page at Addison-Wesley)
This article at Genome Technology gives a brief overview of GPGPU, with a focus on biological information processing using NVIDIA CUDA Technology. The article discusses the results from UIUC’s NAMD / VMD project and neurological simulation company Evolved Machines.
This paper by Anderson et al at Caltech describes a method to use GPUs to accelerate Quantum Monte Carlo on a GPU. QMC is among the most accurate (and expensive) methods in the quantum chemistry zoo. Primarily, this involves the investigation of tricks available to this algorithm to speed up matrix multiplication. That is, as a statistical algorithm, the authors studied the performance enhancements available when multiplying many matrices simultaneously. Additionally, the paper explores the Kahan Summation Formula to improve the accuracy of GPU matrix multiplication. (Quantum Monte Carlo on Graphical Processing Units. Amos G. Anderson, William A Goddard III, Peter Schroder. Computer Physics Communications)
gDEBugger is an OpenGL Debugger and Profiler. It provides the application behavior information a developer needs to find bugs and to optimize application performance. gDEBugger Linux brings all of gDEBugger’s debugging and profiling abilities to the Linux OpenGL developers’ world. gDEBugger Linux is now available as a final beta version. This version includes all gDEBugger’s features and supports the Linux i386 and x86_64 architectures. gDEBugger Linux official version will be released shortly after Graphic Remedy receive feedback from the field and fix any reported issues. (http://www.gremedy.com/gDEBuggerLinux.php)