В какой уровень кеша загружается PREFETCHT2?

В документации для PREFETCHT2, для которого выполняется предварительная выборка с подсказкой T2, говорится (выделено мной):

T0 (временные данные) - предварительная загрузка данных на все уровни иерархии кеша.

T1 (временные данные относительно промахов в кэше первого уровня) - предварительная выборка данных в кэш уровня 2 и выше.

T2 (временные данные относительно промахов в кэше второго уровня) - предварительная выборка данных в кэш уровня 3 и выше или выбор, зависящий от реализации.

NTA (невременные данные по отношению ко всем уровням кеша) - предварительная выборка данных во невременную структуру кеша и в место, близкое к процессору, сводя к минимуму загрязнение кеша.

В более ранней версии документа был идентичный текст для T1 и T2, что указывало на то, что они сделали то же самое.

Итак, на современных процессорах Intel и AMD, действительно ли T2 попадает в L3 (а не в L2)? Или в игру вступает «выбор, зависящий от реализации»?


person BeeOnRope    schedule 15.01.2019    source источник
comment
Что касается процессоров Intel, то ответ находится в разделе 7.3.2 руководства по оптимизации.   -  person Hadi Brais    schedule 15.01.2019
comment
Что касается процессоров AMD, то ответ находится в описании инструкции в руководстве AMD Том 3 (стр. 275).   -  person Hadi Brais    schedule 15.01.2019