
Ich verwende einen Dual-Core-C2D-Prozessor, Windows 7 (obwohl dieses Verhalten bei allen MS-Betriebssystemen, die ich kenne, gleich ist). Wenn ich eine CPU-intensive Single-Thread-Aufgabe ausführe, bleibt sie nicht bei einem Kern, sondern belegt zufällig etwa 50 % des ersten Kerns und etwa 50 % des zweiten.
Warum machen sie das? Führt das nicht zu einer verringerten Effizienz des L1-Cache?
Ich weiß, dass ich Prozessaffinität festlegen kann, ich frage mich nur, was die Gründe für dieses Verhalten sind.
Antwort1
Es ist nicht zufällig. Sie wählen den besten Ort, um es abzulegen. Es macht keinen Sinn, es auf einen Prozessor abzulegen, der gerade einen schwerlastigen Prozess verarbeitet ...
Es hat keinen wirklichen Einfluss auf die Effizienz des L1-Cache, da es SEHR wahrscheinlich ist, dass die anderen Prozesse den L1-Cache bereits von allen nützlichen Daten geleert haben. Deshalb wird so viel über gemeinsam genutzte L2- und L3-Caches gesprochen ...