Опубликован: 18.05.2006 | Уровень: для всех | Доступ: платный | ВУЗ: Ульяновский государственный университет
Лекция 11:

Параллельные системы

< Лекция 10 || Лекция 11: 123 || Лекция 12 >
Аннотация: В этой лекции рассматриваются основные классы параллельных систем, их характерные особенности, технологии параллельного программирования и способы оценки производительности супер-ЭВМ. Цель: ознакомить учащихся с основными классами параллельных систем, разъяснить методы конвейерной и параллельной обработки данных, сформировать умения и навыки правильной оценки производительности суперкомпьютера.
Ключевые слова: ПО, суперкомпьютер, MFLOPS, пиковая производительность, GFLOPS, супер-ЭВМ, gaas, время такта, производительность, увеличение производительности, параллельная обработка данных, конвейерная обработка, операции, закон Амдала, параллельная обработка, ATLAS, конвейерная обработка данных, CDCS, векторно-конвейерные компьютеры, PVP, MIMD, конвейерные функциональные устройства, high-speed, межпроцессорный, массивно-параллельные компьютеры с распределенной памятью, коммуникационная среда, мощность, процессор, доступ, значение, архитектура, коммуникационное оборудование, IBM, единое адресное пространство, память, локальная память, виртуальное, адресное пространство, реальная производительность, параллельные компьютеры с общей памятью, SMP, exemplar, SUN, Ethernet, Ada, интерфейс передачи сообщений, MPI, message passing, interface, режимы передачи, компьютер, длина полупроизводительности, длина, LINPACK, программа, MPP, NAS, benchmarking, Top500, TFLOPS, инсталляция, center, место, ASC, RED, earth, simulator, список, HPFS, реализация интерфейса, ASL, площадь, кластер, gigabit, MVS, AMD, infiniband

Параллельная обработка данных на ЭВМ

Оксфордский толковый словарь по вычислительной технике, изданный в 1986 году, сообщает, что суперкомпьютер - это очень мощная ЭВМ с производительностью свыше 10 MFLOPS. Сегодня этот результат перекрывают уже не только рабочие станции, но, по пиковой производительности, и ПК. В начале 1990-х годов границу проводили уже около отметки в 300 MFLOPS. В 2001 году специалисты двух ведущих "суперкомпьютерных" стран, США и Японии, договорились о подъеме планки до 5 GFLOPS.

Таким образом, основные признаки, характеризующие супер-ЭВМ, следующие:

  • самая высокая производительность;
  • самый современный технологический уровень (например, GaAs-технология);
  • специфические архитектурные решения, направленные на повышение быстродействия (например, наличие операций над векторами);
  • цена, обычно свыше 1-2 млн. долларов.

Какой из факторов является решающим в достижении современных фантастических показателей производительности? Обратимся к историческим фактам. На одном из самых первых компьютеров EDSAC (1949 г.), имевшем время такта 2 мкс, можно было выполнить в среднем 100 арифметических операций в секунду. А пиковая производительность суперкомпьютера CRAY C90 с временем такта порядка 4 нс - около 1 миллиарда арифметических операций в секунду. Таким образом, производительность компьютеров за этот период возросла примерно в 10 миллионов раз, а время такта уменьшилось лишь в 500 раз. Следовательно, увеличение производительности происходило и за счет других факторов, важнейшим среди которых является использование новых архитектурных решений, в частности - принципа параллельной обработки данных.

Параллельная обработка данных имеет две разновидности: конвейерность и параллельность.

Идея конвейерной обработки заключается в выделении отдельных этапов выполнения общей операции, причем так, чтобы каждый этап, выполнив свою работу, передавал бы результат следующему, одновременно принимая новую порцию входных данных. Выигрыш в скорости обработки данных получается за счет совмещения прежде разнесенных во времени операций.

Параллельная обработка данных предполагает наличие нескольких функционально независимых устройств.

Закон Амдала

Закон Амдала

S<= 1/ [f + (1-f)/p]

где S - ускорение, f - доля операций, которые нужно выполнить последовательно, p - число процессоров.

Следствие из закона Амдала: для того чтобы ускорить выполнение программы в q раз, необходимо ускорить не менее чем в q раз и не менее чем (1-1/q) -ую часть программы. Следовательно, если нужно ускорить программу в 100 раз по сравнению с ее последовательным вариантом, то необходимо получить не меньшее ускорение на не менее чем 99,99 % кода!

История появления параллелизма в архитектуре ЭВМ

Все современные процессоры используют тот или иной вид параллельной обработки. Изначально эти идеи внедрялись в самых передовых, а потому единичных компьютерах своего времени:

  • 1953 г. - IBM 701, 1955 г. - IBM 704: разрядно параллельная память и арифметика, АЛУ с плавающей точкой.
  • 1958 г. - IBM 709: независимые процессоры ввода/вывода (т.е. контроллеры ВУ).
  • 1961 г. - IBM STRETCH: опережающий просмотр вперед, расслоение памяти на 2 банка.
  • 1963 г. - ATLAS: реализована конвейерная обработка данных - конвейер команд.
  • 1964 г. - CDC 6600: независимые функциональные устройства.
  • 1969 г. - CDC 7600: конвейерные независимые функциональные устройства (8 конвейеров).
  • 1974 г. - ALLIAC: матричные процессоры (УУ + матрица из 64 процессоров).
  • 1976 г. - CRAY1: векторно-конвейерные процессоры. Введение векторных команд, работающих с целыми массивами независимых данных.
< Лекция 10 || Лекция 11: 123 || Лекция 12 >
Виктория Монахова
Виктория Монахова
Евгений Коваленко
Евгений Коваленко
Андрей Алексеев
Андрей Алексеев
Россия, Краснодарский край
Леонид Силин
Леонид Силин
Россия, Краснодар, МБОУ СОШ 53, 2018