Hardware (PC) recommendation for real-time work

:wave: Hi,
I’ve been searching the web for recommendations about what hardware to choose for a desktop PC. After reading many forums and (old) posts within the Ardour forum, consulting some local technicians without enough luck, I think I need some kind of advice based on experience and I believe you can give me a hand. The Ardour manual gives great information about how to understand/evaluate things (here). Also, the video linked over there, is a great piece of advice. However I’m somehow lost between available and affordable hardware in my country and free software compatibilities, especially related to real-time performance for audio work.

After that introduction, the very question is: which pieces of hardware have you tested so far that you can recommend me to assemble my own desktop machine? I mean something around 350 USD (excluding monitor, mouse, keyboard, soundcard, etc). Motherboard, CPU, RAMs, SSD… Running GNU/Linux OS (It could be Debian or AVLinux). For the time being, with an external USB 2.0 soundcard.

I would want to mix around 20 tracks and perform a recording without much use of plugins. By now I can manage latency problems by Direct Monitor, but I would like to monitor from software; perhaps, some vocals with a delay or reverb included and some tracks playing back with no plugins.

Probably, it could sound like an old machine to some of you, that’s why I think you can help based on your own experience. Or you might know where I could find more information in order to make a practical choice (balance hardware, reduce bottleneck issues, have free software compatibility).

Just in case, I have a PC with a liveCD on a pendrive because my HDD is almost dead and so might be the motherboard or power supply, that’s why I’m focused on a new PC instead of anything else. You may say —why don’t you ask around?—; the trouble is that every person I know that works with audio, uses Windows and non-libre DAWs; and technicians want to offer what they have in stock not necessarily what you need (least what works with GNU/Linux). :confused:

Regards!

This one is always difficult. I can’t just tell you to use what I have as it is: A) out of date, B) made for my needs (has PCI slots for my sound card). Some general rules though… Look at your needs. In your case an extrenal USB Audio device… So first PCIe USB card dedicated to your audio device. I first chose my CPU. You do not want multi thread cores. In my case I chose an i5 with 4 cores and 4 threads. It is ok to use something with hyper threading, but you will just turn it off anyway so why pay for it? After choosing the CPU, the MB must fit that CPU so that cuts out lots of them. Intel has chosen to change their CPUs from i5 with 4 cores and a gpu to 6 cores these days so that leaves deciding what you want for a gpu. Anyway, look for a MB with as few bells an whistles as possible. In my case finding the most PCI slots was important too. I wanted not to have to use the PCI slot that ever MB maker thinks needs to be connected to irq16 with 5 other things. So even if you only need two PCIe slots (gpu and USB) I would get a MB with 7 (full size) so that you can move the PCIe cards around for best latency… This shouldn’t be needed with PCIe which uses virtual IRQ… but choice is never a bad thing. Generally this leaves you with a mid or lower mid MB… basically the cheapest MB with lots of slots :slight_smile: At least 8G of ram, 16G is nicer, but for most things 8G is fine (I mostly went from 8 to 16 because of fire fox rather than anything to do with audio).
Intel used to be the safe choice for GPU, but if you can’t get a MB with an Intel gpu, then what? nvidia I guess. I do not really have much experience with them but I put one in my son’s computer and there have been 0 problems so far (he does graphics more than audio though). The card was not made by nvidia but uses their chip set. It is also not the latest chipset. You want something that has been well tested anyway. High res is not the greatest audio and realtime if the main cpu has to any extra thinking to use it… but your monitor will limit resolution anyway. With the nvidia GPU the word is that the nvidia drivers use less cpu but if you use two displays that has to be set up with the nvidia utility rather than the DE’s disply setup sometimes. In the end, you pay your money and take your chances and then spend the time tweaking it for low latency. The truth is that PCs are not made for low latency audio. They are designed for 30ms latency and anything below that is just good luck and tweaking. A DAW for recording and tracking is not really meant to be run at super low latency either, it takes work to get a machine to run just right. There is no magic bullet, you will find you have to learn more about how your system works.

Try reading the manual for said Windows DAW… (and for most USB audio devices for that matter). They all include a line somewhere that says something like: If you experience xruns while recording use a higher latency until the xruns go away. None of them that I have read give any ideas on making a computer run low latency better. That is left as an exercise for the user of the system.
Sorry to make it sound hard but thats the way it is so far as I can tell. To make matters worse (better), the hardware and the software (Linux kernel for example) are always changing so the advice you can find on the internet is mostly out of date and likely won’t work or may not make a difference. For example, I think it is now possible that a multithread core can be stopped from allowing a second lower priority thread from making use of the same core till the higher priority thread is finished. I don’t know how to set that up though :slight_smile:
So, like it or not, in the same way a DAW already has a steep learning curve, setting a computer up for low latency operation has a similar steep learning curve. It is up to the user to decide how low is good enough.
The first thing that most people find hard to understand is that “speed” (AKA throughput) and low latency are very much not the same thing. In most cases low latency comes at the expense of throughput.

https://www.osadl.org/Hardware-overview.qa-farm-hardware.0.html has some good information on various CPUs with different kernels and how their latency is. They have a test farm where they test various hardware.

350 dollars is a tight budget. Computer prices have been going up not down. I suggest you take a look at AMD cpus. You get much more performance with your money than on Intel. It seems Intel has also muddied the waters a bit. i7 used to be good processor: If you buy a new one now you may find the performance is only on par with a i5 from a couple of years ago. The mitigations for Intel MDS hardware bugs have also been eating away Intel processor performance and they seem to find more of these bugs every now and then. AMD processors are not affected as much.

I bought a powerful 16 core AMD Threadripper system that was very expensive, but I plan to use it for the next 8 years.

Buying used hardware is always an option and you get more for your money. If you are not using much plugins you may get away with a couple of years old two core pc. I used to do all my Ardour work on a dual pentium 1.8 Ghz laptop. Then I upgraded to a quad core Atom. Both worked fine for about 20 tracks and a handful of EQ’s, compressors, two reverb etc. My mixes are quite simple. Both of those machines are Intel and now that the MDS mitigations have eaten away lots of performance my Quad core Atom struggles with big sessions that it used to handle ok. Then I upgraded to a second hand 8 core HP xw8600 from 2009. I got it cheap and it served me well for about 5 years. It was so powerful that I did not notice any slowdown from Intel MDS mitigations.

When buying used hardware Intel is a safe bet, because Intel supports Linux so well. Then just buy a more powerful machine and you won’t get hit by the MDS mitigations much.

With these requirements, I honestly wonder if a Raspberry Pi might work for you, say the new one with 8GB of ram? I used to run Ardour for sessions larger than that off of weaker machines back in the days of 0.9x and earlier, and I know there is an ARM build around here somewhere, I would be curious to see if it would work.

Note that I wouldn’t normally recommend a Raspberry Pi for this work, but it could be worth considering as your requirements are fairly light.

     Seablade
1 Like

Since Ardour 6.0 it’s officially available from http://ardour.org/download
There are also https://nightly.ardour.org builds.

You don’t even need that much RAM.
An Ardour 6 session on a RPi with 20 tracks needs 215 MB RAM.

I just checked. With a PreSonus Audiobox 1818VSL (USB2) 1024 fpp /48kHz, DSP load is around 15% on a modren Pi 4.

PS. Granted, since SD-cards are slow, more RAM is better to use as disk-cache. Then again you probably want a [USB 3] SSD drive for large sessions, anyway.

Perhaps also check https://www.refurbed.de/c/lenovo-laptops/ or similar sites.

I have a 12+ year old X-60s, put in a new SSD (one easily accesible screw), got a new battery, and when it comes to reliable low latency USB audio it beats this more much more modern X250 hands down.

1 Like

Thank you very much for your replies! :smiley:

Never thought of considering a PCIe USB card to enhance latency response, good point. Thanks for saying how you would face the situation! it really helps a lot. Also I’ll check that website you pointed out.

@mhartzel Used hardware is definitely a good option; I’m considering that. My current PC has an AMD CPU so I will consider that too. Thanks!

@seablade, @x42 thanks for your considerations about Raspberry Pi, that’s an interesting one.

I have now a lot of information to get me to a better place (choice).
Regards!

I’m going to jump on this thread, rather than create a new one, as I’m also preparing to replace my existing laptop.
The one question to which I haven’t seen a clear answer is: is there a limit to the number of processors Ardour can use, or will it scale out sideways and use all the cores you give it until it runs out of things to do in parallel?

There is no limit to the number of cores can use.

The number of cores that will be used depends on:

  1. how much parallel signal flow there is in the session
  2. user-controlled options defining CPUs to use
1 Like

Exactly the answer I needed; thanks, Paul!