Документирование для PREFETCHT2
, которое является предварительной выборкой с подсказкой T2, говорит (выделение мое):
T0 (временные данные) - предварительная выборка данных на всех уровнях иерархии кэша.
T1 (временные данные относительно пропусков кэша первого уровня) - предварительная загрузка данных в кэш уровня 2 и выше.
T2 (временные данные относительно пропусков кэша второго уровня) - предварительная загрузка данных в кэш уровня 3 и выше или выбор, зависящий от реализации.
NTA (невременные данные по всем уровням кэша) - предварительная загрузка данных во временную структуру кэша и в местоположение, близкое к процессору, сводя к минимуму загрязнение кэша.
Более ранняя версия документа содержала идентичный текст для T1 и T2, указывая на то, что они делали то же самое.
Так что на современных процессорах Intel и AMD, действительно ли T2 загружается в L3 (а не в L2)? Или в игру вступает «выбор, зависящий от реализации»?