1 Закон Мура Зако́н Му́ра эмпирическое наблюдение, сделанное в 1965 году (через шесть лет после изобретения интегральной схемы), в процессе подготовки.

Презентация:



Advertisements
Похожие презентации
Матричные вычислительные системы Матричные ВС обладают более широкими архитектурными возможностями, чем конвейерные ВС: их каноническая архитектура относится.
Advertisements

Учебный курс Принципы построения и функционирования ЭВМ Лекция 11 Микрокоманды и микрооперации профессор ГУ-ВШЭ, доктор технических наук Геннадий Михайлович.
Лекция 6. Способы адресации в микропроцессорных системах.
Архитектура ЭВМ (лекция 7) проф. Петрова И.Ю. Курс Информатики.
Тема урока: ТРИГГЕР. или не не Разнообразие современных компьютеров очень велико. Но их структуры основаны на общих логических принципах, позволяющих.
1 Параллельное программирование Минакова Е.О. Студентка 6 курса ОНУ им.И.И.Мечникова.
Набор инструкций. Набор команд это множество операций, которое исполняет процессор. Набор команд это та граница, где проектировщик компьютера и программист.
Архитектура компьютера. Функциональные характеристики ПК Лекция 2 часть г.
Набор инструкций. Набор команд это множество операций, которое исполняет процессор. Набор команд -- это та граница, где проектировщик компьютера и программист.
Написанная Дж. Нейманом часть отчета по машине содержала общее описание ЭДВАКа и основные принципы построения машины (1945г.). Она была размножена Г. Голдстайном.
Операционные системы Подготовила Подготовила студентка студентка 1 курса группы Э курса группы Э-108 Шпудейко Кристина Шпудейко Кристина.
1 Лекция 4 ФУНКЦИОНАЛЬНАЯ И СТРУКТУРНАЯ ОРГАНИЗАЦИЯ ЭВМ Информатика 2 Министерство образования и науки Российской Федерации Казанский государственный технический.
Введение в параллельную обработку. Уровни параллелизма в процессорах Параллелизм данных (DLP – Data Level Parallelism) Параллелизм команд (ILP – Instruction.
ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ «Роль ВятГУ в развитии биотехнологии Кировской области» Пименов Евгений Васильевич II Международная конференция биотехнологов.
Микропроцессоры. Процессор Центральным устройством в компьютере является процессор. Он выполняет различные арифметические и логические операции, к которым.
Презентация. Микропроцессоры. Процессор Центральным устройством в компьютере является процессор. Он выполняет различные арифметические и логические операции,
Процессор и оперативная память. 18 ноября 2013 г.
Процессор – это блок, предназначенный для автоматического считывания команд программы, их расшифровки и выполнения.
Архитетура компьютерных систем. Архитектура системы команд как интерфейс между программным и аппаратным обеспечением Архитектура системы команд.
Функциональные возможности ВС. Составные части понятия «архитектура» Вычислительные и логические возможности ВС. Они обусловливаются системой команд (СК),
Транксрипт:

1 Закон Мура Зако́н Му́ра эмпирическое наблюдение, сделанное в 1965 году (через шесть лет после изобретения интегральной схемы), в процессе подготовки выступления Гордоном Муром (одним из основателей Intel). Он высказал предположение, что число транзисторов на кристалле будет удваиваться каждые 24 месяца.эмпирическое1965 году интегральной схемыГордоном МуромIntel транзисторов

2 Увеличение скорости исполнения команд Использование новых архитектур процессоров a.Суперскалярная архитектура. b.Оптимизация выполнения команд. c.Конвейерная обработка. d.Предсказание ветвлений и переходов. Увеличение производительности процессоров

3 Увеличение скорости исполнения команд Pentium 200 МГц 0,25 мкм Intel® Pentium® III (от 450 МГц до 1,33 ГГц) - 0,13 мкм Intel Original LGA775 Celeron Dual Core-E1200 (1.6/800/512K) - 0,065 мкм Intel Original LGA775 Core2Duo-E7200 (2.53/1066/3Mb) - 0,045 мкм Реализуется за счет уменьшения размеров электронных компонент схем и повышения тактовой частоты

4 Использование новых архитектур процессоров Опирается на схемотехнику и усовершенствование программных методов Суперскалярность Оптимизация последовательности выполнения команд Конвейерная обработка Упреждение исполнения, предсказание ветвлений и переходов

5 Параллелизм на уровне команд (ILP Instruction-Level Parallelism) Суперскалярные процессоры это реализации ILP-процессора для последовательных архитектур, программа для которых не должна передавать и, фактически, не может передавать точную информацию о параллелизме. Поскольку программа не содержит точной информации о наличии ILP, задача обнаружения параллелизма должна решаться аппаратурой, которая, в свою очередь, должна создавать план действий для обнаружения «скрытого параллелизма». Идеология EPIC заключается в том, чтобы, с одной стороны, полностью возложить составление плана выполнения команд на компилятор, с другой стороны, предоставить необходимые аппаратные средства, позволяющие при статическом планировании на стадии компиляции использовать механизмы, подобные тем, которые применяются при динамическом планировании в суперскалярных архитектурах Конвейерный принцип обработки информаци подразумевает, что в каждый момент времени процессор работает над различными стадиями выполнения нескольких команд, причем на выполнение каждой стадии выделяются отдельные аппаратные ресурсы. По очередному тактовому импульсу каждая команда в конвейере продвигается на следующую стадию обработки, выполненная команда покидает конвейер, а новая поступает в него. Общие свойства ILP-процессоров - способность одновременно и независимо выполнять несколько операций при наличии нескольких функциональных устройств различных типов, таких как, например, устройство обмена с памятью, арифметическое устройство и др.

6 Оптимизация последовательности выполнения команд Подходы, используемые при оптимизации кода, могут существенно зависеть от критериев оптимизации. Обычно рассматривают три критерия или их комбинации с некоторыми приоритетами. минимизация времени выполнения программы минимизация размера кода минимизация энергопотребления

7 Суммирование векторов A=B+C с помощью последовательного устройства

8 Суммирование векторов A=B+C с помощью двух последовательных устройств

9 Суммирование векторов A=B+C с помощью конвейерного устройства

10 Эффективность конвейерной обработки L – количество ступеней конвейера – время такта работы конвейера – время, необходимое для инициализации векторной команды

11 Повышение производительности за счет усовершенствования структуры ВС Усовершенствование памяти: разрядно-последовательная - разряды слова поступают для последующей обработки последовательно один за другим ; разрядно-параллельная - все разряды слова одновременно считываются из памяти и участвуют в выполнении операции арифметико-логическим устройством. Повышение производительности за счет совмещения во времени различных этапов выполнения соседних команд: опережающий просмотр для считывания, декодирования, вычисления адресов, а также предварительная выборка операндов нескольких команд; разбиение памяти на два и более независимых банка, способных передавать параллельно данные в АЛУ независимо друг от друга. Конвейерный принцип обработки команд: цикл обработки команды разбивается как минимум на N ступеней: выборка команды, вычисление адреса операнда, выборка операнда и выполнение операции. Параллельное функционирование нескольких независимых функциональных устройств.

12 Расслоение памяти Конвейерный принцип обработки команд Параллельное функционирование нескольких независимых функциональных устройств (суперскалярная обработка)

13 Матричные системы (структура ILLIAC IV)

14 Матричные вычислительные системы Матричные ВС обладают более широкими архитектурными возможностями, чем конвейерные ВС: их каноническая архитектура относится к классу SIMD. Матричные ВС относятся к классу систем с массовым параллелизмом (Massively Parallel Processing Systems) и, следовательно, не имеют принципиальных ограничений в наращивании своей производительности. Матричные ВС предназначены для решения сложных задач, связанных с выполнением операций над векторами, матрицами и массивами данных (Data Arrays).

15 Функциональная структура матричного процессора Матричный, или векторный процессор (Array Processor) представляет собой «матрицу» связанных идентичных элементарных процессоров (ЭП), управляемых одним потоком команд. Каждый ЭП включает в себя АЛУ, память и локальный коммутатор. Сеть связей между ЭП (точнее, локальными коммутаторами) позволяет осуществлять обмен данными между любыми процессорами. Поток команд поступает на матрицу ЭП от единого устройства управления (SIMD-архитектура, в каноническом виде).

16 Функциональная структура матричного процессора При решении сложных задач фактически один и тот же алгоритм параллельно (одновременно) реализуется над многими частями исходного массива данных. Матричные процессоры ориентированы на работу в монопрограммном режиме (когда решается только одна задача, представленная в параллельной форме). Реализация мультипрограммных режимов в матричном процессоре осуществляется за счет разделения и «времени», и «пространства». В матричном процессоре имеется единственное устройство управления и множество ЭП, следовательно, в мультипрограммной ситуации должны «делиться» время устройства управления и элементарные процессоры («пространство») между программами.

17 Первый матричный компьютер Первая матричная ВС SOLOMON (Simultaneous Operation Linked Or­dinal MOdular Network вычислительная сеть синхронно функционирующих упорядоченных модулей) была разработана в Иллинойском университете (University of Illinois) США под руководством Даниэля Слотника. Работы по проекту SOLOMON велись с 1962 г., однако этот проект промышленного воплощения не нашел; в 1963 г. был создан лишь макет ВС размером 3x3 элементарных процессора. Позднее была построена конфигурация ВС размером 10x10 ЭП в фирме Westinghouse Electric Corp. Время показало, что технология пока не достигла возможностей создания матричных ЭВМ.

18 Вычислительная система ILLIAC IV Матричная ВС ILLIAC IV создана Иллинойским университетом и корпорацией Бэрроуз (Burroughs Corporation). Работы по созданию ILLIAC IV были начаты в 1966 г. под руководством Д.Л. Слотника. Монтаж системы был закончен в мае 1972 г. в лаборатории фирмы Burroughs (Паоли, штат Панама), а установка для эксплуатации осуществлена в октябре 1972 г. в Научно-исследовательском центре НАСА им. Эймса в штате Калифорния (NASA's Ames Research Center; NASA - National Aeronautics and Space Administration - Национальное управление аэронавтики и космоса). Количество процессоров в системе - 64; быстродействие опер./с (Core 2 Duo до 3, опер./с); емкость оперативной памяти - 1 Мбайт; полезное время составляло % общего времени работы ILLIAC IV, стоимость долл., вес - 75 т, занимаемая площадь м 2. Система ILLIAC IV была включена в вычислительную сеть ARPA (Advanced Research Projects Agency - Управление перспективных исследований и разработок Министерства обороны США) и успешно эксплуатировалась до 1981 г.

19 Функциональная структура системы ILLIAC IV Матричная ВС ILLIAC IV (рис. 5.2) должна была состоять из четырех квадрантов (K 1 -К 4 ) подсистемы ввода-вывода информации, ведущей ВС В6700 (или В6500), дисковой памяти (ДП) и архивной памяти (АП). Планировалось, что ВС обеспечит быстродействие 10 9 опер./с. В реализованном варианте ILLIAC IV содержался только один квадрант, что обеспечило быстродействие опер./с. При этом ILLIAC IV оставалась самой быстродействующей ВС вплоть до 80-х годов XX в.

20 Функциональная структура системы ILLIAC IV Квадрант матричный процессор, включавший в себя устройство управления и 64 ЭП. Устройство управления представляло собой специализированную ЭВМ, которая использовалась для выполнения операций над скалярами и формировала поток команд на матрицу ЭП. Элементарные процессоры матрицы регулярным образом были связаны друг с другом. Структура квадранта системы ILLIAC IV представлялась двумерной решеткой, в которой граничные ЭП были связаны по канонической схеме. Все 64 ЭП работали синхронно и единообразно. Допускалось одновременное выполнение скалярных и векторных операций.

21 Формат представления данных системы ILLIAC IV В системе ILLIAC IV использовалось слово длиной 64 двоичных разряда. Числа могли представляться в следующих форматах: 64 или 32 разряда с плавающей запятой; 48, или 24, или 8 разрядов с фиксированной запятой. При использовании 64-, 32- и 8-разрядных форматов матрица из 64 ЭП могла обрабатывать векторы операндов, состоявшие из 64, 128 и 512 компонентов соответственно. Система ILLIAC IV при суммировании разрядных чисел имела быстродействие почти опер./с, а при сложении 64-разрядных чисел с плавающей запятой - 1, опер./с.

22 Компонентная структура системы ILLIAC IV Элементарный процессор мог находиться в одном из двух состояний - активном или пассивном. В первом состоянии ему разрешалось, а во втором запрещалось выполнять команды, поступавшие из устройства управления. Разрядность сумматора и всех регистров ЭП – 64 бита, регистр модификации адреса – 16 бит и состояния – 8 бит

23 Аппаратный состав системы ILLIAC IV Подсистема ввода-вывода состояла из устройства управления, буферного запоминающего устройства и коммутатора. Ведущая ВС В 6700 мультипроцессорная система корпорации Burroughs; могла иметь в своем составе от 1 до 3 центральных процессоров и от 1 до 3 процессоров ввода-вывода информации и обладала быстродейст­вием (1...3) 10 6 опер./с. Дисковая память (ДП) состояла из двух дисков и обрамляющих электронных схем, она имела емкость порядка 10 9 бит и была снабжена двумя каналами со скоростью 0, бит/с. Среднее время обращения к диску составляло 20 мс. Архивная память (АП) постоянная лазерная память с однократной записью, разработанная фирмой Precision Instrument Company емкостью бит. Имелось 400 информационных полосок по 2,9 млрд. бит, которые размещались на вращающемся барабане. Время поиска данных на любой из 400 полосок достигало 5 с; время поиска в пределах полоски – 200 нс. Существовало два канала обращения к архивной памяти, скорость считывания и записи данных по каждому из которых была равна бит/с.

24 Программное обеспечение системы ILLIAC IV Цель разработки ILLIAC IV создание мощной ВС для решения задач с большим числом операций. Программа структурно содержала три части: «Предпроцессорная» часть обеспечивала инициирование задачи и десятично-двоичные преобразования (последовательная форма) «Ядро» осуществляло решение поставленной задачи и представлялось в параллельной форме. Размер ядра составлял % полного объема программы (его исполнение на последовательной машине требовало % рабочего времени) «Постпроцессорная» часть осуществляла запись результатов в архивные файлы, двоично-десятичные преобразования, вычерчивание графиков, вывод результатов на печать и т. п. (последовательная форма)

25 Программное обеспечение системы ILLIAC IV Программы В 6700, написанной, как правило, на версиях языков ALGOL или FORTRAN и осуществлявшей подготовку (и преобразование) входных двоичных файлов («предпроцессорная» часть). Программы ILLIAC IV, обычно написанных на языках Glynpir или FORTRAN, которые использовались ILLIAC IV (составляли «ядро») для обработки файлов, подготовленных программами В6700, а также для формирования двоичных выходных файлов. Программы В6700 (на версиях языков ALGOL или FORTRAN), которые преобразовывали двоичные файлы ILLIAC IV в требуемый выходной формат («постпроцессорная» часть). Программа на управляющем языке Illiac, определявшая задание. Эта программа ориентировала операционную систему на работу, предусмотренную заданием. Операционная система ILLIAC IV состояла из набора асинхронных программ, выполнявшихся под управлением главной управляющей программы В6700. Она работала в двух режимах: в первом режиме выполнялся контроль и диагностика неисправностей в квадранте и в подсистеме ввода­вывода информации; во втором – осуществлялось управление работой ILLIAC IV при поступлении на В6700 заданий от пользователей. Задание для ILLIAC IV состояло из:

26 Средства программирования системы ILLIAC IV 1.Распределение двумерной памяти. Была разрешена адресация отдельных слов в памяти ЭП и строк (из 64 слов) в пределах запоминающих устройств матрицы ЭП. Адресация по «столбцу» группы слов в памяти одного ЭП была недопустима. 2.Параллелизм и управление режимом обработки. Параллелизм ВС предопределяет работу с векторами данных. Следовательно, языки ILLIAC IV должны были допускать операции над векторами данных или строками матриц. Размерность вектора и количество подлежащих обработке элементов вектора определялись словами режима. Языки ILLIAC IV обеспечивали эффективную реализацию широкого круга вычислений и обработку слов режима. 3.Вид команд пересылок и индексации. Каждый из языков ILLIAC IV должен был содержать команды пересылок и индексации с различными приращениями в каждом элементарном процессоре. Средства программирования ILLIAC IV включали язык ассемблера (Assembler Language) и три языка высокого уровня: Tranquil, Glynpir, FORTRAN. Язык ассемблера ILLIAC IV – традиционный язык программирования, адаптированный под архитектуру ВС. В частности, он имел сложные макроопределения, которые можно было применять для включения стандартных операций ввода-вывода и других операций связи между программами В6700 и ILLIAC IV. Языки высокого уровня благодаря архитектурным особенностям ILLIAC IV отличались от соответствующих языков ЭВМ.

27 Языки высокого уровня системы ILLIAC IV Tranquil подобен языку ALGOL и полностью не зависел от архитектуры ILLIAC IV. Он был разработан для обеспечения параллельной обработки массивов информации. Компилятор языка Tranquil потребовал больших системных затрат, связанных с маскированием архитектуры ILLIAC IV. Поэтому работы по созданию компилятора были приостановлены и предприняты шаги по модификации языка Tranquil. Glynpir являлся языком также алгольного типа с блочной структурой. Он позволял опытному программисту использовать значительные возможности архитектуры ВС ILLIAC IV. Язык FORTRAN был разработан для рядовых пользователей ILLIAC IV. Он в отличие от Glynpir освобождал пользователя от детального распределения памяти и предоставлял ему возможность мыслить в терминах строк любой длины. Он позволял путем применения модифицированных операторов ввода-вывода воспользоваться параллельной программой как последовательной и выполнить ее на одном ЭП. FORTRAN давал возможность отлаживать параллельные программы на одном элементарном процессоре.

28 Применение системы ILLIAC IV Практически установлено, что ILLIAC IV была эффективна при решении широкого спектра сложных задач. Классы задач: матричная арифметика, системы линейных алгебраических уравнений, линейное программирование, исчисление конечных разностей в одномерных, двумерных и трехмерных случаях, квадратуры (включая быстрое преобразование Фурье), обработка сигналов. Классы задачи, обеспечивающих не полное использование ЭП: : движение частиц (метод Монте-Карло и т. д.), несимметричные задачи на собствен­ ные значения, нелинейные уравнения, отыскание корней полиномов. Эффективность системы ILLIAC IV на примере решения типичной задачи линейного программирования, имеющей 4000 ограничений и переменных, можно оценить по времени решения, которое составляло менее 2 мин, а для большой ЭВМ третьего поколения – часов

29 Повышение интеллектуальности управления ЭВМ Поддержка параллелизма в аппаратно-программной среде ВС Повышение эффективности операционных систем и компиляторов, технологии параллельного программирования и исполнения программ, а также поддержка параллелизма в процессоре и согласование особенностей работы с памятью Спецпроцессоры реализация операций на уровне аппаратуры, операций выполняемых на уровне программного обеспечения; требуется обеспечить компромисс между универсальностью и специализированностью Параллелизм на уровне машинных команд отсутствие у пользователя необходимости в специальном параллельном программировании; проблемы с переносимостью остаются на уровне общих проблем переносимости программ в классе последовательных машин. –суперскалярные процессоры Задача обнаружения параллелизма в машинном коде возлагается на аппаратуру; аппаратура строит соответствующую последовательность исполнения команд. –VLIW-процессоры Команда VLIW-процессора состоит из набора полей, каждое из которых отвечает за свою операцию; если какая-то часть процессора на данном этапе выполнения программы не востребована, то соответствующее поле команды не задействуется.

30 Ссылки в сети Internet Оценка производительности ВС Параллельная обработка данных Конвейерная обработка данных