Convolution Reverb for NVidia and ATI GPUs - saving CPU time

VST, AU, AAX, CLAP, etc. Plugin Virtual Effects Discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

What about Directcompute? Nobody is speaking about it..

"Microsoft DirectCompute is an application programming interface (API) that supports general-purpose computing on graphics processing units on Microsoft Windows Vista and Windows 7"

http://en.wikipedia.org/wiki/DirectCompute

I'm under impression that directcompute should enable non-graphics related applications straightforward and easier to do... but I'm not expert of course.

cheers

Post

naa, the thing is to make a really efficient gpu adapter so any of our plugins and [asio] programs with nearly zero audio processing latency could run on gpu. that is, our daws effects would run on gpu then too. who knows maybe our daws would run better on gpus.

Post

stanlea wrote:Salut, voisin.
Hey voisin! Do you make music? On GPU ? :-) Bon on se voit quand ?
@+
Remi SHARROCK

Post

Hello Friends,

Does anyone know the status of this project? The new GUI version in the video looks great.

I found the Dlls, and version .29 - and it runs, but doesn't make any reverb sound. I used the DLL files from Liquid Sonics Reverberate LE (which is very nice), and renamed them to cudard.dll, and cufft.dll - maybe this is why .29 doesn't work.

Regards,
-Brian

Post

bjporter wrote:Hello Friends,

Does anyone know the status of this project? The new GUI version in the video looks great.

I found the Dlls, and version .29 - and it runs, but doesn't make any reverb sound. I used the DLL files from Liquid Sonics Reverberate LE (which is very nice), and renamed them to cudard.dll, and cufft.dll - maybe this is why .29 doesn't work.

Regards,
-Brian
This is highly unlikely to work, you may find taking the CUDA DLLs from the 1.003 of Reverberate LE (linked here) and putting them into the windows system32 directory may work as these are a bit older, but frankly I would not recommend doing this unless you remove them afterwards, or anything else that involves renaming and moving DLLs around from where the developer intended them to be, it's a recipe for trouble. Newer CUDA releases (like the one I use now) have good version control on the DLLs so the correct ones can be loaded, but the original approach was a real messy nuisance and Nils' app may still be using the older DLLs (it's very hard to know which are needed, though he probably bundles the correct ones in the installer and if you remove every other cufft*.dll and cudart*.dll before installation maybe you stand a chance of running it up).

Post

Dear liquidsonics,

Thanks for the helpful post. I think it's a step in the right direction. I will try to find the right .dll's, some cause the GUI to dissapear, other show the gui, but no reverb, just dry output. If I do they will be posted here for download.

BTW, liquidsonics: I can run 11 instances of your LE convolution plugin without a problem, pretty amazing - almost no CPU usage - and a 9.5 second tail. This is running a GPU from 2009. After 11 instances, the ASIO meter goes haywire (lots of crackling), not sure if it's the GPU bottleneck, PCIe, or latency issue.

I'm utterly and absolutely shocked that only a few companies and people are doing GPU plugins - even more convolution ones. The performance gain is unbelievable.

Thanks again,
-Brian

Post

bjporter wrote:I'm utterly and absolutely shocked that only a few companies and people are doing GPU plugins - even more convolution ones. The performance gain is unbelievable.
Try running the CPU version at the same latency as the GPU version, a lot of people find the CPU drain is similar under those conditions. For those that find the GPU helps though that's why I offer LE and Core with a GPU option on PC. A lot of plug-ins simply are not well suited to GPU usage though because they do not have many opportunities for working in parallel to the degree that is required to make GPUs more efficient than CPUs.

Post

Liquidsonics,

I will try this soon, thank you. Your CPU edition is very nice, but unfortunately I could not test it properly, as I maxed out the 32bit RAM requirements (3.5GB). I managed to load 108 (14 buses * 8 aux + 4 instances extra) instances of Reverberate LE, and still uses barely any CPU! It gave me a malloc error after that, naturally.

Post

Liquidsonics,

I kid you not, the CPU meter (Task Manager) goes down when running the GPU edition. I think I'll look around for a serious CPU meter.

Regards

Post

Liquidsonics,

Just did some interesting tests. In various ways I maxed out the CPU. Then after I knew that the CPU couldn't handle much more, I loaded in 11 instances of GPU. It worked flawlessly. Then I replaced the GPU instances with 11 instances of the CPU version, and it completely bogged down, and crackled. I tried different sample settings, from 0 latency to 8196.

The GPU version is definitely working as intended. This is genius.

I'm still convinced that GPU can have bigger market. While it's not quite as snappy as a UAD card, this thing will definitely help.

Still looking for Nils Schneider's Delay, Chorus, and Reverb, anyone have it??? :hihi:

-Brian

Post

bjporter wrote:Liquidsonics,

Just did some interesting tests. In various ways I maxed out the CPU. Then after I knew that the CPU couldn't handle much more, I loaded in 11 instances of GPU. It worked flawlessly. Then I replaced the GPU instances with 11 instances of the CPU version, and it completely bogged down, and crackled. I tried different sample settings, from 0 latency to 8196.

The GPU version is definitely working as intended. This is genius.
Interesting indeed, cool :-o

Post

The state of the new GPU Impulse Reverb has evolved and is now available as public demo for all, though I sell the full version for a low price as commercial now.

Changes to the previous version include:

- Low latency, only one ASIO blocksize
- Supports both NVIDIA and ATI graphics or any other OpenCL device
- GUI completely redesigned
- 2-Band EQ
- Adjustable A/R Envelope and Length parameters
- Native x64 version
- Better performance
- Loads 32bit IRs
- ...

The reverb got it's own website now under: http://gpuimpulsereverb.de

I'm looking forward to comments.

Regards,

Nils
https://k1v.nilsschneider.de - Kawai K1 emulated as VSTi/AU
https://heatvst.com - Android Synthesizer with full VST integration
https://gpuimpulsereverb.de - Use your GPU as reverberation DSP

Post

Awesome news!!! Congratulations.

Nils, I hope I'm not bugging you... but would you care to release the download for delay and chorus betas? :D :D

Regards

Post

These are quite old files and I don't know if they still work. Delay/Chorus is not expensive on a CPU these days, so does it still make sense? I would say no.

However, if you still need them, here are the files:

http://www.nilsschneider.de/files/GPUDelay.exe
http://www.nilsschneider.de/files/GPUChorus.exe

Back to topic: Payment has been updated, I now use "shareIt", a secure payment service. See http://gpuimpulsereverb.de
https://k1v.nilsschneider.de - Kawai K1 emulated as VSTi/AU
https://heatvst.com - Android Synthesizer with full VST integration
https://gpuimpulsereverb.de - Use your GPU as reverberation DSP

Post

Nils Schneider wrote:These are quite old files and I don't know if they still work. Delay/Chorus is not expensive on a CPU these days, so does it still make sense? I would say no.

However, if you still need them, here are the files:

http://www.nilsschneider.de/files/GPUDelay.exe
http://www.nilsschneider.de/files/GPUChorus.exe

Back to topic: Payment has been updated, I now use "shareIt", a secure payment service. See http://gpuimpulsereverb.de
I baked in the oven, an older 8800 GTX just to try these (and Reverberate of course) :)

THANK YOU :hail:

Post Reply

Return to “Effects”