Страница 1 из 1 [ Сообщений: 7 ] Версия для печати [+] |
Всем привет.
Кто-нибудь знает, происходит ли кэширование при запросах в мультипроцессорных системах. Поясню вопрос: Имеем два процессора, у каждого по своему контроллеру памяти и кэшу. К каждому контроллеру подключен банк памяти. Процессоры связаны между собой по hyper transport 1. Процессор А ищет данные с определенным адресом у себя в кэше и НЕ находит 2. Процессор А проверяет, может ли он получить их из локального банка и понимает, что НЕ может 3. Процессор А посылает процессору Б запрос на данные по этому адресу 4. Процессор Б выбирает данные из памяти и передает их процессору А по hyper transport Внимание! Вопрос! Есть ли шаг номер 5: 5. Процессор Б сохраняет данные у себя в кэше. Спасибо. |
Сомневаюсь. Ключевой вопрос "зачем?"
|
Думаю, недавняя инициатива (http://overclocker.ru/hardnews/22558.shtml) АМД по внедрению схемы с объединением вычислительных ресурсов двух процессоров в один квази-процессор, отвечает и на сам вопрос, и на "зачем?"
|
HEKT0, кхм... Тут эта, ответ е...
Тему эту мы еще на хоботе обсосали и пришли к выводу что выигрыш возможен очень нечасто, а вот накладные расходы — большие. Но, в любом случае это имеет смысл ТОЛЬКО в пределах одного сокета. Т.е., для процессоров в разных сокетах тут и говорить не о чем. Так что — зачем? |
HEKT0
Вопрос на самом деле конкретной реализации кроссбаров и протоколов поддержки когерентности. АМД заявляла об улучшении ситуации в этой области в будущем. Что это значит, сказать пока сложно. |
HEKT0
>1. Процессор А ищет данные с определенным адресом у себя в кэше и НЕ находит 2. Процессор А проверяет, может ли он получить их из локального банка и понимает, что НЕ может 3. Процессор А посылает процессору Б запрос на данные по этому адресу 4. Процессор Б проверяет, имеются ли они у него в кэше. При положительном отзыве состояние строки изменяется с Modified/Exclusive на Owned/Shared. Процессор А получает копию, которую записывает с состоянием Shared. 5. Если не имеются, то запрашивается строка из памяти, далее: 5а. Записывается с состоянием Shared (или с промежуточным Exclusive), процессор Б получает копию, сохраняет с состоянием Shared. 5b. Не записывается, маршрутизируется на процессор Б, где получает состояние Exclusive. Это для протокола MOESI. Для MESI и MOWESI будет несколько иначе, особенно при записи в полученную строку. |
Walter S. Farrell
Спасибище. |
Новая тема Ответить | Страница 1 из 1 |
[ Сообщений: 7 ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18 |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |