Comment by wtallis

Comment by wtallis 11 hours ago

4 replies

Your processor has two P cores, and ten cores total, not twelve. The HyperThreading (SMT) does not make the two P cores into four cores. Your experiment with 4 threads will most likely result in using both P cores and two E cores, as no sane OS would double up threads on the P cores before the E cores were full with one thread each.

rwmj 11 hours ago

The hyperthreading should cover up memory latency, since the workload (compiling qemu) might not fit into L3 cache. Although I take your point that it doesn't magically create two core-equivalents.

  • gonzo 8 hours ago

    “Hyperthreading” is a write pipe hack.

    If the core stalls on a write then the other thread gets run.

jeffbee 11 hours ago

I am sure rwmj was smart enough to use `taskset` to make this experiment meaningful.

  • rwmj 10 hours ago

    Hehe, if only :-( However I do want to know what's best with the default Linux scheduler and just using 'make' rather than more complicated commands.