Ultimate PC for Real-time audio DSP

Hi guys ! 


First post here, it's been a while since I enjoy the videos and forum, but now I desperately need help and advice ! I have a big music/multimedia project that I'm putting together and the problem I have is audio wise. 


Here is what I want to do : 



 
I want to build a PC that will process in quasi real-time about 32 channels of audio. Basically, I'll use my PC and my DAW live instead of passing through the venue's console, allowing for much better quality, sonic possibilities (effects and what not) and fidelity (I'll use almost the same setup to record the albums and to perform the shows, so it will sound very damn good live). 


The problem : 




Latency. Latency is a bi*** when it comes to heavy audio processing. I could already run the whole show with the PC I have now but I would need to raise the Buffer size of my audio interface, which adds latency. Now of course, no latency at all is not what I am aiming for. And in fact I am already getting 70% of the performance I need with the latency I want. But I really have the feeling that I am not using my PC to it's true potential and that I could build a better one. Also, I need the system to run everything smoothly and be the most bulletproof possible. A live crash is just not an option. If I have the smallest doubt, I'll buy another one in backup, but still, I can't afford to go through a crash or interruption of any kind during live performance. 


Here's what I have : 




-My interfaces (I use two to have more Ins and Outs) are PCI/PCIe ones whose drivers are well known for being among if not THE absolute bests. (RME - Multiface)
 


-My PC : DP67DE Mobo - i72600 Intel CPU - 32GB Corsair DDR3 1333Hz RAM (pretty overkill here I think)
 


-Good PSU but not so good cooling (stock CPU fan and big GPU in the way (I'll downgrade for sure on the GPU side with the next PC. I think I don't need something good for what I want to do anyway)
 


-Windows 7 x64 and my DAW is Reaper, which seems to be handling quite well the multiple cores
 


-I use plugins that add no latency at all and that are quite CPU friendly. I could use some that are even more CPU friendly but I would lose quality big time. These are the best compromise I've found.

 


I am willing to pay big bucks for the PC but I'm not sure what I should get. I have the feeling that higher CPU frequency is a key element but mine already runs quite high and I may be partly wrong anyway. Xeons ? Dual CPUs ? ECC Memory ? Also, I think getting SSD drives would help (and anyway, It'll make everything boot faster, which is a big plus. Oh and SSDs can probably stand traveling much better)

 


When I load up too many plugins, the sound starts to crackle and dropout on and off. That's at around 35-40% of CPU capacity according to the task manager. Should I be able to go higher than that ? According to the infos I gathered, Windows may not be the best OS for the task. I don't know much about it but I've read a couple of things about Linux and some of the real-time processing it allows. But I'm not sure I know enough to go that way, I have no knowledge in programming and these things seemed a little to deep for my current teksavvy-ness. I'm ok with using the machine and doing a few workarounds but that's about it ! So that's why I need you guys help quite badly !!!  


This is a project I've been working on for years and I've been feeling like I hit a wall with this issue. But you guys know much more than me about PCs right ? So all hope is not lost yet ! Haha 

Any help leading to better results would be amazing. Thanks a lot ! 


Emmanuel

You can spend ten thousand bucks on a xeon e5 if you want

The i7 2600 is some generations back but still a quite capable CPU. It would be to determine how well your Software scales over more Cores/Threads. From what I read on the reaper forums, that might be the case. Low latency RAM might help in that case as well.

Here's a quote from the Cockos Forum from someone by the name "Analogy" that describes it well:

Oh yes, I forgot about latency. More CPU and/or a better audio interface will get you lower end-to-end latency. Latency's not a huge issue for me. If you're tracking and your performers are monitoring through Reaper, or doing any composing using a MIDI keyboard you will want the lowest latency possible. If you're just mixing, or are tracking with an external console or a zero-latency monitoring feature in your audio interface, end-to-end latency doesn't matter.

More CPU power means lower latency capabilities because of the way computer audio works. Your computer has to read a block of x samples (where x is your latency) from your audio interface, while writing a previously processed block of x samples to the audio interface, while processing the latest block of samples read from the interface. As long as your CPU can process every single block of samples in less time than x samples represents, you can do this forever.

The problem is that the operating system's CPU scheduler is not aware of the delicate timing of the audio stream, so some blocks might start processing to late, or the processing might be interrupted in the middle, or some other catastrophe, so when it comes time to write a block of audio to the audio interface, the machine doesn't have a full block to write. The audio interface hits the gap left behind and the result is crackling.

So your minimum achievable latency, in practice, will be the latency at which every single block of audio is able to be processed in the time allotted to it.

That sound reasonable to me. In that case. Say hello to 6-8 core Intel 2011 or 2011-3 i7s or Xeons plus low latency RAM and fast SSDs.

 

Unfortunately the main reason you don't see a lot of professional engineers using PC's to do the DSP processing is because they are not designed for this purpose. You would be better off investing in an interface that has DSP chips built in for doing that processing. Take a look at consoles like the Presonus StudioLive series. They have whats's called a "FAT" channel that does EQ, Gate, Limiter, Compressor, and also effects channels are processed in real time in true digital, without the need for a PC. They are also able to be remote controlled from a PC or an iPad and iPhone.
On the PC side, processing in the DAW will always cause latency no matter what you do. You may be able to lower this enough to not be noticeable, but the simple fact that the CPU has to use cycles on the processing of the OS, the background tasks, the DAW itself, any plugins, the incoming audio stream, the outgoing, all of these things add to latency.

Thanks for the infos so far ! I have considered items such as the Presonus StudioLive but the problem for me is that is would restrain me greatly in terms of special effects. I'ts pretty much a must for me to be able to use special effects processors and tricks even in live situation. The songs just wouldn't be the same... (My sound is quite far from an simple acoustic band mic'ed up with added reverb, EQ and dynamics) I tried DSP accelerating cards such as UAD's (and a bunch of others) but they tax the CPU in the process when the buffer size is small, so It's kind of worthless in my case.

I am quite positive that the route to take for me would be a beastly optimized PC. I just have to try to make it work at least ! After all, I can already do it on a (not so) smaller scale. 

 

There's a plugin company that's called Waves that recently put out dedicated interfaces and DSP servers, and they claim to be able to process hundreds of plugins (the number varies depending on the mode but goes up to 500) without noticeable latency (there will always be latency, but as long as it's under 7ms, its good for me). Anyway the point is that these servers consists of PCs with i7s, not that much RAM and most importantly:

 

''Taking advantage of nowadays CPU power and the memory capabilities of native processing, SoundGrid runs on standard CPUs under custom optimized Linux OS, resulting in predictability, stability, and low latency that was previously exclusive to dedicated DSP-based systems. Consequently, SoundGrid can run large numbers of plugins, as well as extremely CPU-intensive plugins that are beyond the capabilities of DSP-based systems.''

''CPUs dedicated exclusively to audio processing running a customized Linux OS that is optimized for audio processing.''

 

I'm not super familiar with Waves SoundGrid, but I have heard about it and I agree with you . It looks amazing - I just think that at the budget point you are probably working at (assuming - you might be a multi-millionaire) stuff like AudioGrid seems out of reach. AudioGrid is also splitting the load and using different components to process different elements to achieve this low latency. I used to do what you are talking about with the StudioLive i owned simply by feeding channel back into the board from my daw. So the light stuff like eq, comp, re-verb, etc, could be handled by the board, the heavy lifting like synths, and drum machines etc. (software instruments) were all being handled by CPU. This worked as long as I kept the buffer small enough and didn't do too many tracks at once. Normally for this I would say an i5 or an i7 4 core would be enough, but for the number of tracks you want to do, and the amount of instruments you are processing, I'd say you are probably looking at an Extreme Edition 6 or 8 core Intel (8 core is $1k ) and at least 32 Gb or Ram if not 64 - which would be the new quad channel DDR4. At that point the interface should not matter as much, so you could use PCIe, USB or Firewire, or Thunderbolt.

Rest assured I am no multi-millionaire indeed haha, but I'll pay what is necessary go have a functional setup, even if I have to save a whole more year for it (I already spent a lot on interfaces, DSP cards, plugins, pre-amps and so on). But yeah, if I can't get a PC to do what I need, I guess I'll have to go with what you just described : an hybrid setup with a PC that runs part of the processing and either a SoundGrid or a Studio Live for the channels basics. But then again, if for example I need the EQ to occur before the special processing, I'd have to send from the DSP unit to the PC and then back to the DSP unit, resulting in more latency. So I'd be restrained in terms of possibilities. Buah. I think my best bet is to buy an over the top PC and make sure it's free of anything but the DAW and samples so it runs as cleanly as possible. The best would be a specialized OS, but I don't know much about that. If anybody has a suggestion on this, it'd be great. Because Windows really seems like a big weight to carry.