Page 1 of 1

CPU utilization on a dual-head system

Posted: 25 May 2024 04:37
by elp3d
Hi all,
At our shop, we convert videos on a system with 2 Xeon CPUs each with 14 physical and 28 virtual cores. During the conversion, the CPU utilization as per Task Manager can be described as follows:

The CPU #1 is not used.
Of the CPU #2, only the first 7 cores are used at 70%. The rest of 28 virtual cores are not used.

The conversion is from MKV to MP4, using H264 codec. NUMA is enabled. COD is enabled. This configuration demonstrates the highest memory throughput and best performance in other apps that we use.

Sometimes we use another dual-head system with previous generation Xeons with 8 physical and 16 virtual cores, no NUMA, and the CPU utilization on it is completely different: some cores are only used to 10-20%, and it is very difficult to tell which are used by VLC and which are by Windows. CPU utilization during the conversion is very minimal. As per Resource Monitor, disk utilization fluctuates near 0%, and disk queue is just as low, so the conversion is not IO constrained.

Is it possible to use for conversion all of the cores on at least one but ideally on both CPUs?
If you would like to do any debug builds/runs and get diagnostics, I will be happy to provide.

Re: CPU utilization on a dual-head system

Posted: 25 May 2024 08:07
by Rémi Denis-Courmont
I don't think that encoding on two nodes would give good performance. Normally you would run one encoding job per node.

Regarding threading and thread scheduling, you'd have to ask from (lib)x264, not VLC.

Re: CPU utilization on a dual-head system

Posted: 25 May 2024 15:09
by elp3d
Do you mean Cisco people?
Help me understand: I add X video files to the convert list, and VLC code cannot divide the work among cores/CPUs?

Re: CPU utilization on a dual-head system

Posted: 25 May 2024 18:55
by Rémi Denis-Courmont
I mean what I wrote. Threading is managed by the encoder (and potentially the decoder), not VLC.

As for NUMA, that is up to you and the OS to run each VLC instance on one node, and ensure that multiple instances keep all nodes busy. You can't expect desktop software to do that by itself.

Either way, VLC is open-source. If you have improvements to suggests for professional users, you are more than welcome to send patches or hire engineers or consultants.

Re: CPU utilization on a dual-head system

Posted: 28 May 2024 00:29
by elp3d
When you convert multiple files each may convert on its own thread.
I am not a developer. I am your user. You are developers.

Re: CPU utilization on a dual-head system

Posted: 28 May 2024 11:05
by Rémi Denis-Courmont
Are you asking volunteers to provide free professional service to support your commercial business?

If you want pro service, there are plenty of IT consultants that will gladly provide it.

Re: CPU utilization on a dual-head system

Posted: 28 May 2024 13:25
by elp3d
I came here to offer help because I own a powerful hardware configuration that you probably do not own. You are trying to turn this upside down and make it look as if I want to obtain something for free to which I am not entitled.
If you are not interested in developing high-performance software, just say so, and I will leave and let you be.

Re: CPU utilization on a dual-head system

Posted: 30 May 2024 13:57
by elp3d
So, are you not interested in making VLC better?