Нет никакой "своей" банки, кеш L3 и у АМД общий и никакая её часть не принадлежит ни одному ядру, кольцо работает также как у Интела, любой запрос к L3 распространяется по всему кольцу и частям кеша, потому что искомые данные могут быть в любом из них и до запроса не известно в каком, поэтому запрос всегда будет ко всем.ronemun: ↑ 09.01.2023 03:02А коли дані шукаються поза своєю банкою, запит іде по кільцевій шині у інші банки свого чіплета, і також далі по кільцевій шині предається у сусідній чіплет.
Кольцевая шина существует в рамках кластера, по ней нельзя передать данные в соседний чиплет, чтобы это сделать надо чтобы данные/запрос из кольца через IF прошли к IOdie, а от него ещё через ещё одну IF уже в другой чиплет. Так как у L3 есть все таги L2 всех ядер, он определяет есть ли запрашиваемые данные у него или в одном из L2, формирует запрос туда, ответ передаётся исходному запросу, и данные летят по обратному пути: две шины IF и IOdie, задерживаясь на каждом этапе.
Собственно, разница задержек между ядрами в какой-то мере показывает эту разницу, если синхронизация происходит через свой L3, то задержки около 17 нс, а через кучу IF и чужой L3, то аж 75 нс. Ну а синхронизация данных и запрос данных это что-то похожее, так как оба являются запросами и используют один и тот же механизм передачи данных.