CUDA GPU for DAW

Configure and optimize you computer for Audio.
Post Reply New Topic
RELATED
PRODUCTS

Post

Is anyone familiar with CUDA GPU usage for DAWs?

Post

djmino02 wrote:Is anyone familiar with CUDA GPU usage for DAWs?
I haven't seen any DAWs list it as a "recommendation", let alone a requirement. I've seen a few VST effects use it, but not many.

I was hoping it would have taken off by now. My guess is that not enough DAWs use CUDA-based graphics cards (since high-performance graphics aren't necessary in a DAW), so the market share hasn't been large enough for any developers to target. There may also be latency issues if the graphics card is processing some parts of the DAW, while the CPU is processing others.

Steve
Here's some of my stuff: https://soundcloud.com/shadowsoflife. If you hear something you like, I'm looking for collaborators.

Post

I think it did/does not take off becuase it's a pain in the ass to code and does not bring much benefit.
GPUs are monsters on parallel-processing. Like blending a picture and process all the 4k pixels in parallel.
Audio dsp works differnt. You cannot calculate 4k audio samples in parallel but you need sample0 to calc sample1, you need sample1 to calc sample2 and so on...
GPUs are not DSPs.
Different chip, different use-case. There a plugins that try to off-load CPU by using GPU, but other than that there is no real reason to use GPU on audio. Ugly to code, not made for low-latency / realtime at all, ...

Post

It's not easy at all to run multiple plugin instances on CUDA and to meet requirements of audio buffer timings. So unless there comes some established standard (similiar tu UAD), I wouldn't count on it.
Blog ------------- YouTube channel
Tricky-Loops wrote: (...)someone like Armin van Buuren who claims to make a track in half an hour and all his songs sound somewhat boring(...)

Post

Cool. I heard that it was used for nebula.

I guess they can render impulses spectrally with gpu's?

Post

djmino02 wrote: Cool. I heard that it was used for nebula.
I guess they can render impulses spectrally with gpu's?
They use CUDA for their convolution reverb.
But that's a very special use-case :D convolution is used on graphics too... cuda is actually really good on running convolution kernels. They have used that build a convolution reverb on top ;)

Post

PurpleSunray wrote:
djmino02 wrote: Cool. I heard that it was used for nebula.
I guess they can render impulses spectrally with gpu's?
They use CUDA for their convolution reverb.
But that's a very special use-case :D convolution is used on graphics too... cuda is actually really good on running convolution kernels. They have used that build a convolution reverb on top ;)
Have they addressed the latency issues with memory transfers between device and host?

Post

CUDA is mainly a one-way street. Software sends a whole lot of data to the GPU to be processed exclusively there, then the result is usually no where near the size of the input. It does have use in convolution, as well as sound synthesis. But to depend on it for real-time audio like we do on CPUs isn't possible yet.

Post

A few plugin makers have said that using Cuda for alogos causes a lot of latency they wont use it. At least one plugin I know uses Cuda for the plugin's GUI.

Post

I have been playing around with this for a couple of months. It definitely is possible to create a DAW that leverages GPU. I am using it as an accelerator for the next iteration of my Blackbox software. The problem with plugins is it just isn't possible to memcpy an audio block into GPU memory process it and bring it back into the current audio thread without hitting under-run. I have been able to some quite complex stuff with huge buffers 200ms + but realtime (sub 10ms) just aint do-able.

It is possible to conceive a DAW with a few caveats.
- Realtime playback but no realtime triggers for audio
- Process audio in large chunks at a time (so kernels can be optimised)
- A whole new framework for 3rd party plugins would need to be created
- OpenCL 2.0 + or CUDA Only. OpenCL 1.x has to much API traversing.

I actually think something for mixing stems with linear phase filters for EQ's and Compression, Harmonics kind of DAW would work as there wouldn't be lots of conditional branching. Chunks could be processed ahead of time giving enough time to copy audio to the CUDA / OpenCL host application to interface with whatever hardware.
Hi I'm Nammick, Musical Artist and Professional Hacker Geek!
https://nammick.com/blackbox

Post

There is little use for CUDA in audio work.
Even with Nebula, the CPU drop is not great.
The only area of effects that I am aware of that benefits greatly is sample-based reverbs, but nowadays CPUs are strong enough that it's not usually worth it.
You're better off buying a marginally-better CPU. And you won't benefit strongly from buying the latest and greatest video card.
Leaving aside the fact that nvidia drivers often cause latency issues...

Post

One use case I can imagine is analysis. Tagging samples for example and of course anything which needs to be displayed... It would take off some load at least...

Post

Not really - the amount of time it takes to transfer the data to the GPU far outweighs the low CPU usage of any kind of analysis. Only heavy-CPU activities are worth considering, and then only if they can be easily parallelized.

Post

Latency aside it all depends on the operations used. If there are lots of conditions used then GPU's fall over. I tried this summer to make a micro daw with both CUDA and OpenCL and I could do some really impressive lin phase filtering but that's it something like a compressor which has a threshold needs logic to say if above this threshold then compress starts to eat GPU performance.

GPU - Great for say times this set of numbers with this set
CPU - Great for if this then this then this else this operations

As a developer it's much more beneficial trying to re-arrange or optimise SSE / AVX instruction sets as this starts to tap into the paralism that GPU's have without incurring any runtime cost
Hi I'm Nammick, Musical Artist and Professional Hacker Geek!
https://nammick.com/blackbox

Post

you guys forget that not al vst's are there for manipulating sounds
and some great stuff could be achieved if the current ones were converted to make full use of the cuda
and gpu powers available.
i am thinking especially about oscilloscope and freq responce visualisation , fft , or any function using fourrier for that matter high detail could be still running smooth in that case

Post Reply

Return to “Computer Setup and System Configuration”