Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » А.Н. Томилин - Вычислительные системы (2006)

А.Н. Томилин - Вычислительные системы (2006), страница 11

PDF-файл А.Н. Томилин - Вычислительные системы (2006), страница 11 Вычислительные сети и системы (53245): Лекции - 7 семестрА.Н. Томилин - Вычислительные системы (2006): Вычислительные сети и системы - PDF, страница 11 (53245) - СтудИзба2019-09-18СтудИзба

Описание файла

PDF-файл из архива "А.Н. Томилин - Вычислительные системы (2006)", который расположен в категории "". Всё это находится в предмете "вычислительные сети и системы" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 11 страницы из PDF

Сейчас нет уже такого понятия, как«серийная машина». А раньше большие машины шли сериями, т.е. машина вот такая. Хочешь — бери, не хочешь — другой нет. Теперь же любую систему берёте на заказ.Вот я напомнил вопрос о зацеплении работы функциональных устройств. В связи сэтим, имеется понятие «суперскалярный».Суперскалярный — это когда у вас в вашем процессоре операций над векторами не задействовано, а есть несколько устройств: тот же сложитель/вычитатель, тот же умножитель,делитель — и вы можете отдельные операции практически параллелить. Вот если такое естьу вас в скалярном процессоре, там где нет соответствующих схем подачи компонентов векторов (это я очень аккуратно выразился), только такие машины называются суперскалярными.Итак, если у вас отдельно есть группа векторных ФУ, отдельно группа скалярных ФУ,адресные — бог с ними, вот что касается скалярных операций, то можно их подсовыватьвнутри векторных и ничего плохого не будет.

Но вот из машин типа Cray сразу вылезло двеидеи. Первая идея заключается вот в чём. Вот у нас есть векторный регистр A (V0), векторный регистр B (V1). Я выполняю операциюA+B=Ca1a2b1b2V0(A)c1c2V1( B)V2(C)Значит, я из A беру a1, из B — b1, в C пишу с1. Но если я так сделал, то можно считатьобработанные компоненты векторных регистров A и B свободными. C я не могу считать свободным, здесь у меня заполняется. И, как бы, я мог заполнять освободившиеся компонентыуже другим материалом.

Тут вопрос: команды одиночной передачи — слишком накладнобудет, команды групповой — синхронизуется ли здесь всё. Можно попробовать, но всё-такисложно. У Cray этого не было. И какая у машины Cray была проблема? А вот какая.Естественно, возникал подъём производительности: все устройства заняты, зацепление,всё работает с максимальной производительностью. А мы пытаемся подкачать до тех пор,пока не закончится эта операция. Как только закончилась — групповая операция идёт, ноона должна завершиться, на это нужно время. При этом, что это может быть? Это можетбыть какие-то другие данные для других операций, если вам достаточно и все операции идутнад 64-х компонентными векторами.

А может быть, это просто продолжение вектора A ивектора B в том смысле, что у вас вектор не 64 компонента, а 1000. Значит, вам нужно под30загружать всё время. Поэтому, может быть падение производительности, потом снова и т.д.Вот такой будет «пилообразный» вариант графика загрузки ФУ:загрузка ФУподгрузкаtТак и случилось в машине Cray.И вот ученики Крэя сделали из этого вывод и попробовали это дело преобразить.

Чтоони сделали? Они сделали следующее. Они убрали все регистры. Давайте смотреть ситуациюQ=( A + B) ⋅ CDНужно при отсутствии регистров уметь подавать на вход каждый такт: ai, bi, ci, di, и qiзаписывать каждый такт. Если нет регистров, то откуда брать информацию? Конечно из памяти. Т.е. в один такт я должен уметь сделать 4 считывания из памяти и одну запись. Т.е.нужно иметь очень высокую степень параллелизма работы памяти.Вот в машине Cyber 205, которую ученики Крэя в фирме Control Data Corporation (CDC)сделали несколько позднее, это достигнуто было, и все ФУ работали непрерывно.Давайте посчитаем какой-нибудь разумный вариант. Они одну трудность убрали (регистры, нужно на них вовремя подавать данные, всё это считает оптимизирующая часть транслятора, причём не всегда удачно).

Они ушли от этой неприятности, но получили другуюнеприятность: организовать высокий параллелизм далеко не так уж просто. И вот этотподход время от времени появлялся в разработках машин векторно-конвейерного класса.Давайте посчитаем пример:Q=( A + B) ⋅ CDИтак, разбиваем на некоторое количество блоков ОП. Как правило, цикл работы блокапамяти бывает дольше цикла работы АЛУ или ФУ, как части АЛУ, в 2 раза или в 4.

Пустьцикл работы блока ОП равен 12 тактам. Сколько нам нужно блоков памяти, естественно безостановки на подгрузку: 12 + (N – 1), где N — число компонент вектора. Хорошо. Допустим,я запустил на выборку a1 и запустил на выборку следующий блок памяти со сдвигом на одинтакт. Итак, сколько мне нужно блоков для размещения компонент вектора A? Вообще говоря,12, потому что считаем, что я запускаю через каждый такт: как только a1 я получу, запускаюего снова на выборку a13. Действительно, поскольку я запустил его через 12 тактов, через 12тактов я получу a13, а он мне как раз раньше и не нужен.

Всё. Таким образом, мне нужно 12блоков, чтобы разместить таким образом компоненты вектора A. Столько же (12 блоков) мненужно, чтобы разместить компоненты вектора B, и т.д.31ФУa13a14A...a24b13b14Ba1a212 блоковa12b1b2......Что у меня получается: 12 + 12 + 12 + 12 + 12 = 60 блоков. Нужно 60 блоков, чтобы получить тот самый результат, чтобы они работали непрерывно. Ну а где не получается, тамнеправильно работать не будет, но будут задержки.Это решение было в машине Cyber 205, и эта идея была жива, и вот мы с вами сейчасрассмотрим отечественную разработку — модульно-конвейерный процессор (МКП), правдаэто был 1990 год. Тем не менее, там реализовался некий симбиоз идей Cray и Cyber 205. Этохарактерно для вычислительной техники — учесть достоинства и недостатки зарубежных исвоих разработок, и разработать некий вариант, преодолевающий эти недостатки.

Институтточной механики и вычислительной техники всегда так и делал.Модульно-конвейерный процессор (МКП)Существовал некий многомашинный комплекс, в который входил основной вычислитель, называемый модульно-конвейерный процессор (МКП), или несколько таковых, и внешние машины, которые поставляют данные для вычислений (программы, данные), занималисьподготовкой заданий для выполнения вычислений, постобработкой, удобной для реальноговывода на реальные устройства. Cray возник тоже как многомашинный комплекс.

ПотомКрэй начал экспериментировать, и, в конечном счете, пришёл к достаточно устойчивому варианту, когда в качестве соединительной машины или нескольких таковых использоваласьмашина CDC серии 7000, которая в 10 раз менее производительна, чем центральный процессор.Это, конечно, было совершенно ясно, уже первая суперЭВМ была двухмашинным(многомашинным) комплексом: модульно-конвейерный процессор или несколько таковыхобъединялся с несколькими тогда в распоряжении Эльбрусами теми же каналами, которыеначали уже зарабатывать хорошее признание в использовании. И вот этойкоммуникационной средой многомашинные комплексы объединялись вместе с, такназываемой, внешней памятью, массовой памятью, но об этом несколько позднее будетразговор.Итак, модульно-конвейерный процессор (МКП) — идея объединения Cray’я иCyber 205 (см.

Рис. 4).Существовал конвейер однофункциональных устройств. Исполнительный блок — этонабор конвейерных ФУ. Существовало некоторое количество S-регистров (скалярные регистры), только их было 128. Существовала оперативная память. Не было двойных как уCray’я S- и T-регистров. Было 2 скалярных блока (S-регистр + УУ). Два устройства управления, и мы получаем 2 потока команд. Та же идея работы с S-регистрами, что и у Cray. Средипотока команд (2 потока команд), естественно, возникают векторные команды. Тогда этивекторные команды набирались в буфере векторных команд.

И существовал векторный блок.Он содержал несколько регистров, но очень мало. Когда выбиралась векторная операция,естественно, она шла в векторный блок (находилась возможность чередования, смотреласьнезависимость данных, ко всему этому руку прикладывал транслятор, и идут аппаратныеконтроли этого дела), и так же как в Cyber 205, идёт поток данных широким горлом из ОП ввекторный блок и обратно. А если нужно работать в зацеплении, то там были буквально не32сколько штук регистров. Вот такая была основная идея — идея соединения решения Crayдля скалярной обработки, а для векторов было взято решения Cyber 205.Исполнительный блокФУФУФУ...Скалярный блоквекторный блоквекторнаякомандакомандыкомандыS-регистрзацеплениеS-регистрУУУУ128128буфервекторныхкомандблок векторныхсортировокОПРис.

4Итак, машина состояла в основном из 4-х основных блоков, т.е. исполнительного блока,двух скалярных блоков, одного векторного блока. Был ещё очень интересный блок, назывался блок векторных сортировок. Т.е. если у вас данные распложены как-то не подряд, то можете их в этом блоке организовать подряд, чтобы потом отсюда они пускались подряд. Естественно, команды сортировок шли сюда. Здесь своя была линия с памятью, никуда дальшене шло, только работа с памятью.

Вот так был устроен МКП.Теперь так. Мысль возбудилась о том, что как же так, УУ выдаёт за один такт толькоодну команду. И что? Каждый раз можно загрузить делом только одно, а остальные в этотмомент простаивают. Их первые ступени будут просто пустыми. Итак, появилась идея длинного командного слова, так называемый very large instruction word (WLIW).Разработки начали появляться сразу, но большую коммерческую выгоду не принесли.Но разработки появлялись, и даже у нас была такая разработка под руководствомБ.А.Бабаяна.

И также точно была загублена в 1990 году из-за отсутствия средств на реализацию идеи. А именно вот что было предложено.Была предложена машина, называемая Эльбрус 3. В этом Эльбрус 3 предполагалось,что процессор состоит из 7 ФУ — так было задумано. Конвейерный режим, конечно, был. Иза такт (усложнение ОП) выбиралась длинная команда.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5140
Авторов
на СтудИзбе
442
Средний доход
с одного платного файла
Обучение Подробнее