|
|
Реальное оборудование: иерархии памяти AMD Opteron Х4 (Barcelona) и Intel Nehalem04.05.2019Здесь будет рассмотрена иерархия памяти в двух современных микропроцессорах: the AMD Opteron Х4 (Barcelona) и Intel N'ehalein. Фотография кристалла процессора Intel Nehalem,— фотография кристалла процессор AMD Opteron Х4. У обоих кристаллов имеется вторичная и третичная кэш-память на главном кристалле процессора. Такая интеграция сокращает время доступа к кэш-памяти низшего уровня, а также сокращает количество выводов на кристалле, поскольку отпадает необходимость в шине к внешней вторичной кэш памяти. На обоих кристаллах расположены контроллеры памяти, что сокращает латентность обращения к оперативной памяти. Nehalem и большинство других процессоров в своей иерархии памяти следуют политике включения. Это означает, что копия всех данных в кэш памяти самого верхнего уровня может быть также найдена в устройствах кэш памяти нижних уровней. В отличие от этого, процессоры AMD в устройствах кэшпамяти первого и второго уровней следуют политике исключения, означающей, что блок кэшпамяти может быть найден только в устройствах кэш-памяти первого или второго уровней, но не на обоих уровнях. Следовательно, при промахе во время обращения к кэш памяти уровня L1, когда блок извлекается из L2 в L1, заменяемый блок отправляется обратно в кэш-память уровня L2. Не успели получить образование в ВУЗе? Вы можете купить готовый диплом полностью соответствующий всем необходимым требованиям. Процессор Opteron Х4 не только не следует политике обычного включения, но кроме этого еще имеет нестандартные взаимоотношения между уровнями «ерархии памяти. Вместо того чтобы снабжать из памяти кэш-память уровня L2, оторая в свою очередь снабжает кэш память уровня L1, кэш-памя гь уровня L2 содержит только те данные, которые были исключены из кэш-памнги уровня L1. Таким гбразом, кэш-память уровня L2 может быть названа кэш-памятью «жертвенных» занных, поскольку в ней содержатся только те блоки, которые были перемещены из .1 («жертвы»). Аналогично этому, кэш-память уровня L3 является кэш памятью «жертвенных данных для L2, состоящей только из блоков, которые были перемещены из _2 Если данные, приведшие к промаху в L1, не будут найдены в L2, но будут найдены s L3, кэш память уровня L3 поставит данные непосредственно кэш-памяти уровня L1. Следовательно, промах при обращении к L1 может быть обслужен путем попадания § L2, или путем попадания в L3, или из памяти.
|