В.А. Фисун - Параллельная обработка данных (2005) (1127758), страница 5
Текст из файла (страница 5)
Наиболее известны следующие типовые архитектуры RISC процессоровмикропроцессоров(МП): PowerPC, PA-RISC, Alpha, SPARC (Scalable ProcessorArchitecture) - МП с изменяемой архитектурой, разработанный в 80 годы вКалифорнийском университете (Беркли) MIPS (Mikroprocessor without InterlockedPipeline Stages) - МП без блокировки конвейера, разработанный в 80 годы вСтенфордском университете, архитектура запатентована в 1990г.18. Сверхдлинные командыВ ЭВМ с архитектурой VLIW (Very Long Instruction Word) - (очень большиекомандные слова), команды могут иметь широкий формат (длину) и команда можетсодержать несколько содержательных инструкций, выполнение которых детальнорегламентируется в терминах тактов работы АУ (параллельное выполнениенескольких команд в АУ).
В таких архитектурах имеется возможностьпрограммировать вычислительные алгоритмы (включая векторные) с максимальнойпроизводительностью для данной аппаратуры. В них вся работа по оптимальномупрограммированию возлагается на системы программирования (или ручноепрограммирование).Однако, упрощения в архитектуре управления приводит к значительному возрастаниюсложности задачи планирования выдачи команд, так программными средствамидолжна быть обеспечена точная синхронизация считывания и записи данных. Приэтом необходимо так планировать параллельное выполнение операций машины,чтобы выполнялись определенные ограничения на число одновременно считываний и17записей в наборы регистров, использование ФУ и т.д.
Размер командного слова вмашинах данной архитектуры - FPS (AP-120B) - 64 бита, Multilow Tract - 1024.Определяющие свойства архитектуры VLIW:- Одно центральное управляющее устройство, обрабатывающее за один такт однудлинную команду.- Большое число функциональных устройств (ФУ) - АЛУ.- Наличия в длинной команде полей, каждое из которых содержит командууправления некоторым функциональным устройством или команду обращения кпамяти.- Статически определенная длительностьв тактах исполнения каждойоперации.
Операции могут быть конвейеризованы.- Закрепление во время компиляции банков расслоенной памяти за ФУ дляполучения максимальной ширины доступа для данных, которые можносоединить в одну команду.- Система передвижения данных между ФУ, минуя память. Маршрутпередвижения полностью специфицируется во время компиляции.- Практическая невозможность ручного программирования в силу большойсложности возникающих комбинаторных задач.19.
Производительность вычислительных систем.Оценка производительности вычислительных систем имеет два аспекта: оценкапиковой производительности – номинального быстродействия системы и получениеоценок максимальной - “реальной” производительности. Если номинальная(пиковая,предельная) оценка однозначно определяется техническими параметрамиоборудования, то вторая характеристика указывает производительность системы вреальной среде применения.
Для оценки производительности вычислительных системвТОР500используютсяобозначенияRpeak–пиковая,предельнаяпроизводительность и Rmax – максимальная производительность при решении задачиLinpack.19.1. Единицы измерения быстродействия ЭВМНаиболее абстрактной единицей измерения производительности микропроцессоровявляется тактовая частота ПК, частота тактового генератора (clock rate,). Любаяоперация в процессоре не может быть выполнена быстрее, чем за один такт (период)генератора.
Итак, минимальное время исполнения одной логической операции(переключение транзистора) - один такт. Тактовая частота измеряется в Герцах –число тактов в секунду. 1 МГерц – миллион тактов в секунду, ГГерц – миллиардтактов в секунду. С наибольшей частотой работают элементы ПК, интегрированныена чипе – АЛУ, кэш память, дешифратор команд, регистры, а частота синхронизациипересылки между кэшем и памятью (ОЗУ) ниже. Разрядность шины адреса длябольшинства процессоров –32 байта и она должна работать с частотой кэш памяти.Шины данных работает на частоте работы основной памяти. При этом частоты работы18шины данных, например, равны 66, 66, 166 Мгц для микропроцессоров Pentium Pro200, Power PC 604E-225, Alpha 21164-500, работающих на тактовых частотах 300, 225,500 Мгц соответственно.
При ширине шин 64, 64, 128 разрядов это обеспечиваетпропускную способность интерфейса с основной памятью 512, 512, 2560 Мбайт/с,соответственно.Внутренняя архитектура процессора, как и тактовая частота, также влияет на работупроцессора, поэтому два CPU с одинаковой тактовой частотой не обязательно будутработать одинаково. Кроме того, некоторые микропроцессоры являютсясуперскалярными, т.е. они могут выполнять более одной команды за тактовый цикл.Итак, тактовая частота ПК, даже с уточнениями частоты шины могут быть оценкойлишь номинальной производительности ПК.Другой обобщенной мерой производительности ПК может служить число команд,выполняемые в единицу времени. Для вычислителей фон-Нейманновскойархитектуры скорость выполнения команд уже может быть параметром, которыйможет быть использован для оценки времени выполнения программы.
Этот параметр MIPS (Million Instruction Per Second)- миллион операций (команд,инструкцийЭВМ)/сек. Так как время выполнения различных команд может различаться, то данныхпараметр сопровождался разного вида уточнениями (логических команд, заданнойсмеси команд и т.д.), а также наиболее известной здесь мерой в 1 MIPS – этопроизводительность вычислителя VAX 11/780.
Итак, данный параметр такжедостаточно условен.Так как для большинства вычислительных алгоритмов существуют оценки числаарифметических операций, необходимых для выполнения расчетов, данная мера иможет служить тем показателем, который и интересует пользователей в первуюочередь. Это – MFLPOPS (Million of Floating point Operation Per Second – Мегафлопс )миллион операций на данных с плавающей запятой/сек, единица быстродействияЭВМ в операциях с плавающей запятой, есть также единицы - GFLPOPS и ТFLPOPS(терафлопс = 10**12 оп./сек.).20. Измерение реальной производительностиОбычно, рассматриваются три подхода к оценке производительности:- на базе аналитических модели (системами массового обслуживания);- имитационное моделирование;- измерения.Первый подход обеспечивает наиболее общие и наименее точные результаты,последние, наоборот, - наименее общие и наиболее точные.
Измерения проводятсяконтрольными (тестовыми) программами.Бенч-марк (Benchmark) - эталон:- стандарт, по которому могут быть сделаны измерения или сравнения;19- процедура, задача или тест, которые могут быть использованы для сравнениясистем или компонентов друг с другом или со стандартом как в п.1.Для повышения общности и представительности оценки производительностиконтрольные программы можно разделить на:- программы нижнего уровня. Эти программы тестируют основные машинныеоперации - +,/,* , с учетом времени доступа к памяти, работу кэша,характеристики ввода/вывода.- ядра программ.
Ядра программ - короткие характерные участки программ,например, Ливерморские фортрановские ядра (24 ядра) , Эймсовские ядра НАСА,синтетический тест Ветстоун (Whetstone).- основные подпрограммы и типовые процедуры;Примером основныхподпрограмм могут быть программы Линпак (Linpack) , программы типабыстрого преобразования Фурье.Программа Линпак - процедура решения системы линейных уравнений методомисключения Гаусса.
В этой схеме вычислений точно известно число операций сплавающей точкой, которое зависит от размерности массивов – параметров.Стандартные значения размерностей 100 или 1000. Для параллельных ЭВМ имеетсясоответствующая версия теста.- полные основные прикладные программы; В качестве примеров программ этогоуровня приводятся Лос-Аламосские тестовые программы моделирования поведенияплазмы и программы гидродинамики.- перспективные прикладные программы.Более корректные результаты реальной производительности вычислительныхсистем получаются при использовании полных прикладных программ с полным женабором входных данных. Имеются тестовые пакеты с ориентацией на оценкумикропроцессоров, наиболее известные, разработаны фирмой SPEC (SystemsPerformance Evaluation Cooperative), SPECintХХХХ SPECfpХХХХ (ХХХХ- годвыпуска теста), которые характеризуют быстродействие ПК при обработкецелочисленных и вещественных чисел.21. Закон АмдалаЗакон Амдала показывает коэффициент ускорения выполнения программы напараллельных системах в зависимости от степени распараллеливания программы.Пусть: N - число процессоров системы, P - доля распараллеливаемой частипрограммы, а S = 1-P - доля скалярных операций программы, выполняемых безсовмещения по времени.( S+P = 1 , S,P >= 0).
Тогда, по Амдалу, общее времявыполненияпрограммынаоднопроцессорномвычислителеS+P,намультипроцессоре: S+P/N, а ускорение при этом есть функция от P: Sp =(S+P)/(S+P/N) = 1/(S+P/N)Из формулы закона Амдала следует,что при:P = 0 S = 1 - ускорения вычисления нет, а20P = 1 S = 0 - ускорение вычислений в N разЕсли P = S = 0.5, то даже при бесконечном числе процессоров ускорение не можетбыть более чем в 2 раза.22.
Архитектура мультипроцессорных систем.Архитектуры параллельных вычислителей в свое время разделялись намногомашинные (слабосвязанные) и многопроцессорные (сильносвязанные)комплексы. По типу (“силе”) связей между элементарными вычислителямимультипроцессорные комплексы, в настоящее время, можно классифицировать:GRID-сети, кластеры, суперЭВМ (МИМД системы по Флинну) .GRID-сети это совокупность вычислительных систем, связанных черезИнтернет (метакомпьютинг). Используются для решения задач, допускающихсегментацию на независимые вычислительные процессы с большим объемомвычислений. Такими задачами являются задача исследования генома, обработкурезультатов физических испытаний, проект CETI.Вычислительные кластеры (cluster) – группа ЭВМ (серверов), связаннаямежду собой системной сетью и функционирующая с точки зрения пользователякак единый вычислительный узел.