[slurm-users] Using hyperthreaded processors
Diego Zuccato
diego.zuccato at unibo.it
Fri Nov 6 12:00:06 UTC 2020
Il 04/11/20 19:12, Brian Andrus ha scritto:
> One thing you will start finding in HPC is that, by it's goal,
> hyperthreading is usually a poor fit.
Depends on many factors, but our tests confirm it can do much good!
> If you are properly utilizing your cores, your jobs will actually be
> slowed by using hyperthreading. They are not 'extra' cores, but a
> method of swapping a core to a different workload during an idle cycle.
> The operative word being 'idle'. The goal of HPC is get resource usage
> as close to 100% as possible, so there should be no 'idle' cycles.
IIUC that's wrong.
Multithread cores have two independent execution units, but a single MMU
(and, from memory, a single FPU, but the tests gave different results).
So you can have at most one process per core, but if you have
multithreaded (threads share address space, processes don't) code it
will run at about twice the speed it achieves when running on a single
thread.
Tested with FPU-intensive code on our cluster.
What thrashes performance is trying to run different processes in the
two threads of a core.
Just my $.02
--
Diego Zuccato
DIFA - Dip. di Fisica e Astronomia
Servizi Informatici
Alma Mater Studiorum - Università di Bologna
V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
tel.: +39 051 20 95786
More information about the slurm-users
mailing list