Э. Таненбаум - Архитектура компьютера (1127755), страница 182
Текст из файла (страница 182)
Третьей формой внутрипроцессорного параллелизма является однокристальный мультипроцессор. В однокристальном мультипроцессоре два или более ядер размещаются на одной микросхеме, что позволяет нм работать одновременно. На следующем уровне вверх по иерархии располашются сопроцессоры. Обычно сопроцессор выполняется в виде встраиваемой платы, которая позволяет увеличить вычислительные возможности процессора в некоторых специальных областях, таких как обслуживание сетевого протокола или обработка мультимедийных данных. Эти дополнительные процессоры снижают нагрузку на главный процессор, предоставляя ему возможность делать другие вещи, пока они решают узкоспециализированные задачи.
Уровнем выше находятся мультипроцессоры с общей памятью. Такие системы содержат два или более полноценных процессора, совместно использующих общую память. Мультипроцессоры с однородным доступом к памяти (()МА-машины) могут взаимодействовать через общую шину (шину слежения) либо через сеть с перекрестной или многоступенчатой коммутацией. Они характеризуются унифицированным временем доступа к любым модулям памяти. В противоположность им в Х13МА-мультипроцессорах всем процессам также предоставляется общее адресное пространство, но время доступа к удаленным модулям заметно болыпе, чем к локальным.
Наконец, в СОМА-мультипроцессорах строки 708 Глава 8. Параллельные компьютерные архитектуры кэша по запросу перемеШаются от машине к машине, но «настоящего дома», как в других схемах, у этих строк нет. Мультикомпьютерами называют системы с множеством процессоров, но без общей памяти. Каждый из них имеет собственную локальную память и связывается с другими посредством сообщений.
МРР-машины, такие как В1пеСепе/1. производства 1ВМ, — это большие мультикомпьютеры, связанные специализированными коммуникационными сетями. Мультикомпьютеры часто программируются с помощью специальных программных пакетов, таких как МР1, которые позволяют разрабатывать приложения, ориентированные на передачу сообщений. Альтернативные схемы связаны с использованием общей памяти на прикладном уровне. Сюда можно отнести разбитое на страницы адресное пространство в Р8М, пространство кортежей в 1зпда, объекты в Отса и О1оЪе. В О8М моделируется общая память на уровне страниц, и в этом система 1)8М напоминает ЬП)МА-машину, за исключением, возможно, более высоких издержек при удаленных обращениях.
На самом верхнем уровне располагаются системы распределенных вычислений. Это — наиболее слабо связанные системы; в них для решения общих задач объединяются целые организации, совместно используя через Интернет вычислительные возможности своих компьютеров, данные и другие ресурсы. Вопросы и задания 1. В Рецэп длина команды может достигать 17 байт. Является ли Реп11цш Ъ'1.1%'-процессором? 2. Пусть диапазон машинного представления числа составляет 0 — 255.
Что получится в результате усечения чисел 96, — 9, 300 и 256? 3. Совместимы ли следующие Тг1Мео1а-команды и, если нет, то почему? 1) пелочисленное сложение, целочисленное вычитание, загрузка, сложение с плавающей точкой, непосредственная загрузка; 2) целочисленное вычитание, целочисленное умножение, непосредственная загрузка, сдвиг, сдвиг; 3) непосредственная загрузка, сложение с плавающей точкой, умножение с плавающей точкой, ветвление, непосредственная загрузка. 4.
На рис. 8.5, г и д показаны первые 12 циклов машинных команд. Для каждого варианта опишите, что происходит в следующих трех циклах. 5. На конкретном процессоре при кэш промахе на уровне 1 и кэш-попадании на уровне 2 команда выполняется л машинных циклов. Пусть для маскировки кэш-промахов в каше уровня 1 используется мелкомодульная многопоточность. Сколько программных потоков должны работать одновременно, чтобы полностью избежать холостых циклов? 6. Утром пчелиная матка созывает рабочих пчел и сообщает им, что сегодня им нужно собрать нектар ноготков. Рабочие пчелы вылетают из улья и летят в разных направлениях в поисках ноготков.
Что это за система, 51МР или М1М1)? Вопросы и задания 709 7. Обсуждая модели состоятельности памяти, мы упомянули, что такая модель представляет собой контракт между программным обеспечением и памятью. Почему необходим такой контракт? 8. Рассмотрим мультипроцессор с общей шиной. Что произойдет, если два процес сора попытаются получить доступ к глобальной памяти в один и тот же момент? 9. Предположим, что по техническим причинам следящий кэш может следить только за адресными линиями, а за информационными — нет.
Повлияет ли это изменение на протокол сквозной записи? 10. Рассмотрим простую модель мультипроцессорной системы с шиной и без кэ- шнрования. Предположим, что одна из каждых четырех команд обращается к памяти, причем при каждом обращении к памяти шина занимается на все время выполнения команды. Если шина занята, то запрашивающий процессор ставится в очередь Р1РО. Насколько быстрее будет работать система с 64 процессорами по сравнению с однопроцессорной системой? 11. Протокол МЕЯ имеет четыре состояния. Другой протокол согласования кэ шей при отложенной записи имеет три состояния. Каким из состояний протокола МЕ51 можно пожертвовать, и каковы будут последствия каждого из четырех вариантов? Если бы вам пришлось выбрать только три состояния, какие бы вы выбрали? 12.
Бывают ли в протоколе МЕЯ1 такие ситуации, когда строка каша присутству ет в локальной кэш-памяти, но при этом все равно требуется транзакция шины? Если да, то опишите такую ситуацию. 13. Предположим, что к общей шине подсоединено п процессоров. Вероятность того, что один из процессоров пытается использовать шину в данном цикле, равна р. Какова вероятность, что: 1) шина свободна (О запросов); 2) совершается один запрос; 3) совершается более одного запроса. 14.
Сколько схем перекрестной коммутации в полноценном процессоре Р)ге Е25К компании Япп? 15. Предположим, что провод между коммутатором 2А и коммутатором ЗВ в се ти ошейа поврежден. Какие именно элементы будут отрезаны друг от друга? 16. «Горячие» точки (области памяти, к которым часто происходят обращения) в сетях с многоступенчатой коммутацией представляют собой серьезную проблему. А являются ли они проблемой в системах с шинной организацией? 17.
Сеть отейа соединяет 4096 ИБС-процессоров, время цикла каждого нз кото рых составляет 60 нс, с 4096 бесконечно быстрыми модулями памяти. Каждый коммутирующий элемент дает задержку 5 нс. Сколько слотов отсрочки требуется для команды 1.ОАО? 18. Рассмотрим машину, использующую сеть отейа (см. рис. 8.25). Предполо- жим, что программа и стек 1 хранятся в модуле памяти О Какое незначительное изменение топологии может значительно повлиять на производительность7 710 Глава 6. Параллельные компьютерные архитектуры 19. 20.
21. 22. 23. 24. 25. 26. 27. 28. (Эта модифицированная топология используется в 1ВМ ВРЗ и ВВХ Виггег- Йу.) Какой недостаток имеет новая топология по сравнению со старой? В л(ПМА-мультипроцессоре обращение к локальной памяти занимает 20 нс, а к памяти другого процессора — 120 нс. Программа во время выполнения совершает М обращений к памяти, 1 74 из которых — обращения к странипе Р.
Изначально эта страница находится в удаленной памяти, а на копирова- ние ее из локальной памяти требуется С нс. При каких обстоятельствах эту страницу следует копировать локально, если ее не используют другие про- цессоры? Рассмотрим СС-л(БМА-мультипроцессор, такой, как на рис. 8.27, но содер- жащий 512 узлов по 8 Мбайт каждый. Если длина строки каша составляет 64 байта, каков процент непроизводительных затрат для каталогов? Как по- влияет увеличение числа узлов на непроизводительные затраты (они увели- чатся, уменьшатся или останутся без изменений)? Вычислите диаметр сети для каждой из топологий, представленных на рис.
8.31. Для каждой из топологий, представленных на рис. 8.31, определите коэффи- циент отказоустойчивости (максимальное число линий связи, после утраты которых сеть не окажется разделена на две части), Рассмотрим топологию двойной тор (см. рис, 8.31, е), расширенную до разме- ра Й х Й. Каков диаметр такой сети? (Подсказка: четное и нечетное значение Й нужно рассматривать отдельно.) Представим сеть в форме куба 8 х 8 х 8. Каждая линия связи имеет дуплекс- ную пропускную способность 1 Гбайт/с. Какова пропускная способность се- чения в этой сети7 Закон Амдала ограничивает потенциальное ускорение, достижимое в параллельном компьютере. Вычислите как функцию от 7 максимально возможное ускорение, если число процессоров стремится к бесконечности. Каково значение этого предела для 7' = 0,1? Рисунок 8.42 призван показать, что масштабирование в случае с шиной невозможно, а в случае с решеткой возможно и желательно.
Предположим, каждая шина или линия связи имеет пропускную способность Ь. Вычислите среднюю пропускную способность на каждый процессор для кюкдого из четырех случаев. Затем масштабируйте каждую систему до 64 процессоров и выполните те же вычисления. Чему равен предел, если число процессоров стремится к бесконечности? В этой книге мы обсуждали трп варианта примитива эел4 — синхронный, блокирующий и неблокирующий. Предложите четвертый вариант, напоминающий блокирующий, но немного отличающийся по свойствам. Какое преимущество и каков недостаток имеет новый примитив по сравнению с обычной блокирующей операцией зелй? Рассмотрим компьютер, который работает в сети с аппаратным широковещанием (папример, Егйегпег).