Я использую двухъядерный процессор C2D, Windows 7 (хотя это поведение одинаково во всех ОС MS, которые я видел). Когда я запускаю любую однопоточную задачу с интенсивным использованием ЦП, она не привязана к одному ядру, а скорее случайным образом занимает около 50% первого ядра и около 50% - второго.
Зачем они это делают? Не приводит ли это к снижению эффективности кеш-памяти L1?
Я знаю, что могу установить привязку к процессу, мне просто интересно, чем вызвано такое поведение.
Это не случайно. Они выбирают лучшее место, чтобы бросить его, нет смысла бросать его на процессор, который в настоящее время обрабатывает тяжелый процесс ...
На самом деле это не влияет на эффективность кеш-памяти L1, так как очень вероятно, что другие процессы уже очистили кэш L1 от всех полезных данных. Вот почему так много говорят об общих кэшах L2 и L3 ...