Hello everyone,
I would like your opinion on an idea that came to mind about a possible optimization or improvement in performance.
In short, do you think it makes sense to assign some CPUs specifically to OSDs and others to VMs, to avoid possible “collisions” between processes?
In my case, each node in my cluster has 48 cores (2 CPUs, 12 physical cores, 24 in hyperthreading for each CPU) and 10 HDDs, and therefore 10 OSDs (one each HDD).
I would like to assign CPUs 0-1 to the physical host's Debian, CPUs 2-12 to the OSDs only, and all other cores to the QEMU processes for the VMs.
This should be possible (I think) by modifying some scripts in systemd and adding an entry such as
[Service]
CPUAffinity=Nstart-Nend
Do you think this approach makes sense, or is it just a waste of time, because the physical host's OS already has an optimized balancing policy ?
I would like your opinion on an idea that came to mind about a possible optimization or improvement in performance.
In short, do you think it makes sense to assign some CPUs specifically to OSDs and others to VMs, to avoid possible “collisions” between processes?
In my case, each node in my cluster has 48 cores (2 CPUs, 12 physical cores, 24 in hyperthreading for each CPU) and 10 HDDs, and therefore 10 OSDs (one each HDD).
I would like to assign CPUs 0-1 to the physical host's Debian, CPUs 2-12 to the OSDs only, and all other cores to the QEMU processes for the VMs.
This should be possible (I think) by modifying some scripts in systemd and adding an entry such as
[Service]
CPUAffinity=Nstart-Nend
Do you think this approach makes sense, or is it just a waste of time, because the physical host's OS already has an optimized balancing policy ?
Last edited: