Le 07/04/2020 à 23:57, Segher Boessenkool via cfarm-users a écrit : > Hi! > > On Sat, Apr 04, 2020 at 08:28:49PM +0200, Baptiste Jonglez via cfarm-users > wrote: >> Following up on a thread from 2018 [1], we still have issue with counting >> the number of CPU, cores and threads on "exotic" machines. >> >> I gave a try at hwloc on all farm machines, below is the result where: >> >> M = machine >> N = node (NUMA node) >> P = package >> C = core >> T = pu (thread) > Other than "M", and perhaps "T", what do those things even *mean*? > > Mapping this to the various ways this is expressed on different > architectures (all of those an approximation as well), is more of a > judgment call than a science, as well.
I agree that there are some caveat but overall it's well defined: * package = the physical thing that goes into a physical socket on the motherboard * core = minimal set of hardware threads and their units (FPU, etc). cores have their own units (not talking about caches here). it's basically why a judge ruled that "dual-core" compute units were not actual dual-cores (the FPU was shared between those 2 "fake" cores). * NUMA node = bunch of memory with uniform access performance We had some discussion with hardware vendors 10 years ago to settle this (for instance, they requested we say Package instead of Socket) but now everybody seems agree. Of course, sometimes they don't have the required stuff in firmware or OS to expose all the details. That's why ARM big.LITTLE exposes 2 packages (one package of big cores and one package of small cores): they need something between package and core but Linux didn't have anything like that until Intel added "Die" recently. Brice _______________________________________________ cfarm-users mailing list [email protected] https://lists.tetaneutral.net/listinfo/cfarm-users
