Why does a Music Server require high processing CPU power?


I noticed that some music servers use, for example, a dual multicore CPU’s running under a custom assembled operating system.  In addition, the server is powered by a linear power supply with choke regulation and a large capacitor bank utilizing the highest audiophile grade capacitors.  Various other music servers have similar high CPU processing capabilities.  

I know that music is played in real-time so there is not much time to do any large amounts of processing.  I also know that the data stream needs to free of jitter and all other forms of extra noise and distortion.   I believe that inputs and outputs are happening at the same time (I think).

I also know that Music Servers needs to support File Formats of FLAC, ALAC, WAV, AIFF, MP3, AAC, OGG, WMA, WMA-L, DSF, DFF, Native Sampling Rates of 44.1kHz, 48kHz, 88.2kHz, 96kHz, 176.4kHz, 192kHz, 352.8kHz, 384kHz, 705.6kHz, and 768kHz and DSD formats of DSD64, DSD128, DSD256 and DSD512 including Bit Depths of 16 and 24.  

Why does a music server require high processing power?   Does the list above of supported formats etc. require high processing power?  Assuming the Music Server is not a DAC, or a pre-amp, what is going on that requires this much processing power?   

What processing is going on in a music server?  How much processing power does a music server require?  

Am I missing something?   Thanks.   


hgeifman
In thinking about it, the choice of the underlying PC for a branded music server probably has more to do with marketing than anything else. If you have a maker of audiophile equipment that is going to get a couple of grand for the product, you might as well put in a more powerful PC. That'll impress some buyers whether the power is needed or not.

Just a thought.


You can get excellent results with nothing more than a Raspberry Pi with a digital out HAT such as Digi+
I have no idea why anyone would need dual Xeon processors and 48GB of memory in a home music server. 
Hi Hgeifman,

The question about lots of CPU processing is not necessarily the same as having multiple cores.

Scheduling work to be done on a CPU is complicated, and desktop OS’s are not designed to be real-time(RTOS) or to guarantee latency between the time something is requested and it’s processed.

Having multiple cores facilitates this if you can guarantee 1 core for streaming, and leave the other tasks, like waiting for a user event or indexing music.

In terms of things that seem to actually consume processing power, upsampling and equalization are the two things which can consume processing power, and this varies on the type of upsampling, and the complexity of the eq.

Simple parametric EQ’s are usually benign, while room correction and convolution can really soak up the processing time. As well, upsampling to DSD seems to be (based on Roon) a big CPU consumer.

I use an AMD A10 processor, with 4/5 PEQ’s and filters, upsampling PCM by 2x and the CPU load is really light. It’s overkill, for an 8 year old CPU. Uses about 5% of 1 thread, but if I do upsampling to DSD it will use up nearly 75% or more of it.

Of course, MQA decoding will also add to this a little.

So, it depends, but CPU power is cheap these days, and easier to design a system with guaranteed latency if you have multiple cores than if you don’t.

Lastly, it's important to note that the CPU must do many things at once.  The reading and decompression of data from a file or external streaming source, as well as providing that data to the metronome of the output signal.  More cores helps facilitate this too, but the total processing power, that is, the amount of computation that must occur on the chip may not actually be all that much.

Best,


E