GPU programming

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

Does anyone know any resources for low-level GPU programming, for example, to perform convolutions or matrix operations outside the CPU?
Listen to my latest album Astronauta at

http://www.facproductions.net

Post

There's CUDA for the newer Nvidia cards.
http://www.nvidia.com/object/cuda_home.html

I believe ATI has something similar though that could be my mind playing tricks on me.

Post

Seems that CUDA is really the only current standard. I use that term loosly as theres really not much audio stuff available for it. A few people attempted to do the same on less expensive cards but it never really took off. CUDA requires Nvidia Gforce 8400GS cards and over. IMHO its better to go native or develop for the other DSP cards like Creamware etc as they have an existing user base.
Last edited by UltraJv on Tue Apr 15, 2008 11:17 pm, edited 3 times in total.

Post

UltraJv wrote: CUDA is expensive (Nvidia 8800 cards and over).
Nah. That was way back. Now even the lowly 8400 GS supports CUDA.
http://www.nvidia.com/object/cuda_learn_products.html

Post

just corrected it to 8400GS lol - None of my computers supports even that yet, I hate noisy fans.

Post

The 8800GT is only ~$150 USD these days.. not that expensive.. In july theres supposedly going to be a 9800GT.. I think I'll jump on board then..

Post

Thanks for the links.

It's too bad that even these days, there are no standard GPU low level API's, when even a cheapo card can do a lot of stuff. Seems like a waste of power, unless you're a gamer or a designer.
Listen to my latest album Astronauta at

http://www.facproductions.net

Post

yeah.. the Folding@home folks have a client for ATI cards.. which is kind of cool.. shame (for me) that I only use Nvidia these days.. hopefully they'll port it to nividia cards one day...

Post

fac wrote:Does anyone know any resources for low-level GPU programming, for example, to perform convolutions or matrix operations outside the CPU?
http://libsh.org/


cheers,
Bart

Post

If you look at the Nvidia SDK, the example "gpgpu_fluid" is a fluid dynamics sim running that will run on most DX9 GPUs I think - I've had it running on my old GeForce FX5700 here and at work I've got it running on the XBox360 GPU. I think the streamops and other base classes and ideas used in the gpgpu fluid demo are what went on to be developed into CUDA (I could be wrong though as I haven't read up on CUDA so don't really know what it involves).

GPGPU info:
http://en.wikipedia.org/wiki/GPGPU
http://www.gpgpu.org/

AFAIK - if your GPU supports DX9 vertex/pixel shaders and floating point textures, you should be able to encode audio into a texture and handcode shaders to do processing for you. I've not looked into it before but presumably CUDA does a lot to help the rapid encoding and decoding of information to / from texture formats and streaming the textures as efficiently as possible to the GPU. Trying to go to the metal and do it yourself in HLSL or CG without CUDA could be a major pain in the arse (as I found in the various stages of trying to debug my implementation of the fluid sim) due to the pain of trying to debug GPU processes ... but it'd be nice to leverage the vector chomping power of GPUs for audio :-)

Post

Thanks, dunk. That was very useful.
Listen to my latest album Astronauta at

http://www.facproductions.net

Post Reply

Return to “DSP and Plugin Development”