Yo,Related topic: Intel has announced that some of their new CPU lines will once again have SMT in each core. Just the thought of multiple sockets with multiple core, with multiple threads and shared L3 cache sounds like a scheduling nightmare.
Myself and a colleague were just discussing the output of /proc/cpuinfo,
specifically the CPU siblings field. He pointed out/we think that this
historically was supposed to be number of HT siblings for a given CPU.
The actual value of that field comes from the Hamming Weight (number of
set bits) of the per_cpu cpu_core_map variable, which supposedly is
"representing HT and core siblings of each logical CPU", i.e. both HT
siblings and additional cores within the same CPU package.
Does this mean that "siblings" needs renaming? (doesn't it come
originally from "HT siblings"? or is it supposed to be both?). More
importantly, what's the correct way to determine number of HTs?