GPGPU acceleration

How about some experimental GPGPU acceleration within ardour?

Maybe using OpenCL or CUDA to accelerate some common audio processing functions.

GPGPU’s are very powerful but also very latency-inducing. They are not designed for use in realtime, low latency contexts. If you were doing “offline rendering” they would offer huge amounts of power, but their current design adds many milliseconds to delays to signal processing.

Why is that a problem? realtime playback still works(without GPU), but rendering will be faster(using GPU), right?
I’m aware it’s not easy to implement something like this.

by rendering, i guess you mean for export. I’d say that it is not worth it. I don’t feel that exporting takes very long, and there are plenty of other things to work on than speeding up the export.

what about dsp cards? ive only breifly looked into them. ive seen dsp cards for UA plugins ( maybe one day linux will suppor UA)

is there some kind of audio DSP card that could be utilised by jack or ardour.

Or are we stuck with just “souping” up our computers with high clockspeeds and multiple cores.

TBH i dont think cuda is they way forward unless you dont mind setting yoiur machine up in a dedicated sound proof room. Ive just setup my machine with cudo for folding @ home and i cant run it unless i cool my machine better. 10 minutes of gpu comuting and my gpu hit 65c
Its already noisy enough with 3 quiet medium sized fans,1 large quiet fan. standard cpu fan and powersupply fan.

DSP cards are always a short-term win. Within a few months of the release of a given DSP core, general purpose processors can typically out-perform it. They are cheaper and offer more predictable behaviour than general purpose chips, but in general they are not a long term win. CUDA etc. are still not appropriate for realtime audio processing. The architecture has huge computing bandwidth but not very good latency characteristics, as I said above back in 2009.

yeah thats what i thought. tbh i only seemed to find UA dsp cards.

Now thinkiing about it cpu is probably always going to win over dedicated hardware in the pc domain until theres a complete redisign and how everything connects together.

the PCI bus has a latency timer which on my computer can only be set to a minimum of 32 (whatever that is).

I’ll keep my money for upgrading my motherboard cpu and ram and stick with a cheaper gfx card that can power 3 displays. I dont play games so i cant justify a £500 graphics card.

now, can ardour make use of the full potential of AMD processors. I keep seeing across the net that while AMD processors are cheaper than Intel equivelents. Intel wins over AMD as software is not optimised to utilise AMD architecture. meaning that the AMD chips can never get maxed out (all cores running at 100%) they sit around 50-60%.

Or is this a windows problem and linux have it sorted or its going to be sorted.


can ardour make use of say an amd fx 6 or 8 core cpu running at 4ghz.

Ardour can make use of N processors on an N processor system. Our default is to use N-1 processors for DSP work, leaving 1 for GUI/MIDI/disk I/O, but this is user configurable.

It turns out that defining what a “processor” is can be rather complex, though.