Convolution Reverb for NVidia and ATI GPUs - saving CPU time
-
- KVRist
- 243 posts since 24 Dec, 2004
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
"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
-
- KVRer
- 13 posts since 31 Oct, 2007
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.
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
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
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
-
- KVRian
- 519 posts since 30 Jan, 2009 from UK
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).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
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
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
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
-
- KVRian
- 519 posts since 30 Jan, 2009 from UK
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.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.
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
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.
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.
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
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
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
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
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???
-Brian
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???
-Brian
-
- KVRian
- 519 posts since 30 Jan, 2009 from UK
Interesting indeed, coolbjporter 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.
-
Nils Schneider Nils Schneider https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=45370
- KVRist
- Topic Starter
- 279 posts since 22 Oct, 2004 from Neuss, Germany
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
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
https://heatvst.com - Android Synthesizer with full VST integration
https://gpuimpulsereverb.de - Use your GPU as reverberation DSP
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
Awesome news!!! Congratulations.
Nils, I hope I'm not bugging you... but would you care to release the download for delay and chorus betas?
Regards
Nils, I hope I'm not bugging you... but would you care to release the download for delay and chorus betas?
Regards
-
Nils Schneider Nils Schneider https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=45370
- KVRist
- Topic Starter
- 279 posts since 22 Oct, 2004 from Neuss, Germany
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
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
https://heatvst.com - Android Synthesizer with full VST integration
https://gpuimpulsereverb.de - Use your GPU as reverberation DSP
-
- KVRAF
- 2688 posts since 19 Dec, 2010 from North America
I baked in the oven, an older 8800 GTX just to try these (and Reverberate of course)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
THANK YOU