4 ms·
It depends on what resources your code uses on-chip. If all threads are contending on the same resources, then you won't see a speedup; if they're using differe
by barrkel 9y ago
It depends on what resources your code uses on-chip. If all threads are contending on the same resources, then you won't see a speedup; if they're using different resources, hyperthreading can increase throughput significantly. I've seen hyperthreading give me the equivalent of 50% of another CPU, particularly when I'm running multiple CPU-bound processes concurrently (so they're not executing the same code at the same time in some kind of parallel operation, and certainly aren't bound on synchronization primitive overheads).
- Syzygies 9y agoThat makes sense. I'm a mathematician, and my experience is with pure computations, homogeneous across each (virtual) core.