http://www.nvidia.com/object/IO_37226.htmlGPU 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.
Also,
http://arstechnica.com/news.ars/post/20061108-8182.htmlit's actually built from the ground up as a highly multithreaded, general-purpose stream processor, with the GPU functionality layered over it in software. This is the reverse of existing general-purpose GPU (GPGPU) approaches. So with the G80, a programmer can write a stream program in a regular high-level language (HLL) that compiles directly to the stream processor, without the additional overhead that goes along with translating HLL programs into a graphics-specific language like OpenGL's GLSL.
For info on "Stream Processing", check here:
http://arstechnica.com/news.ars/post/20060918-7763.html
Stream processing is quite similar to SIMD processing, but where SIMD processors use single instructions to operate on vectors, stream processors use kernels to operate on streams.
An input stream is an array of data elements that can be operated on in parallel. Input streams are fed into a stream processor one stream at a time, where they're operated on by collections of instructions called kernels. A kernels is a sequence of instructions that are to be applied to each element in a stream. Thus a kernel function acts like a small loop that iterates once once for each stream element.