3 ms·
"Hyperthreading" (or whatever AMD's equivalent is), to my understanding, works by having multiple instruction streams share a pipeline in a superscalar processo
by packetlost 3y ago
"Hyperthreading" (or whatever AMD's equivalent is), to my understanding, works by having multiple instruction streams share a pipeline in a superscalar processor. So if you have 2 processes running on the same core that are dependent on each other, you stall your pipeline more because more instructions are dependent on each other.
That being said, because hyperthreaded workloads share a pipeline and a cache, there might be benefit for memory-constrained applications to pinning pairs of processes to the 2 logical cores on the same physical core if it's highly queue-like and you can process the data in similar numbers of instructions for codestream.