Marco van de Voort wrote:
Hyperthreading doubles the execution stream logic, so that one core can take two incoming streams of instructions. The idea is that when one thread stalls, or executes unoptimal code, the other thread can run, increasing utilization. But that is more something like 10%, not doubling it.
I'd expect somewhat better than 10%, but another complicating factor is that it will depend on the cache architecture. Also in the general case some architectures can manage a lot of integer threads but have a massive bottleneck if multiple threads try to do floating point operations.
-- Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues] _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal