Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/Intel/D19860812Elc025.shtml

Повышение производительности параллельного компьютера благодаря применению средств векторной обработки

УДК 681.3.01

Vector processing boosts Hypercube's performance, No.15, pp.30,31

В каждый узел компьютера iPSC фирмы Intel с параллельной архитектурой Hypercube введен векторный процессор, благодаря чему производительность этой ЭВМ сравнялась с аналогичным показателем суперкомпьютеров фирмы Cray, однако стоит она в десять раз дешевле.

В 1985г. фирма Intel Corp. включилась в гонку за создание суперкомпьютеров меньших размеров и повышенной производительности, выпустив машины iPSC (Intel Personal Supercomputer — персональный суперкомпьютер фирмы Intel) — серию сравнительно недорогих ЭВМ с параллельной обработкой на базе микропроцессора, относящуюся к классу суперкомпьютеров. В настоящее время специалисты фирмы вводят в состав этих машин векторные процессоры — по одному на каждый узел, — что увеличивает производительность компьютеров серии iPSC на два порядка величины. Быстродействие исходных вариантов машин серии iPSC составило от 2 до 8 Мфлопс (миллионов операций с плавающей точкой в секунду). Машины новой серии iPSC-VX обеспечивают производительность до 424 Мфлопс при операциях двойной точности с 64-разрядными данными.

«С точки зрения показателя стоимость/производительность эти машины опережают сегодняшние компьютеры на целое поколение», — говорит Пол Уайли, руководитель маркетинга в отделении Scientific Computers фирмы Intel (Бивертон, шт.Орегон), спроектировавшем семейство iPSC-VX. Как утверждает Уайли, быстродействие суперкомпьютерного уровня достигнуто при цене, в десять раз меньшей чем у другой эквивалентной машины, скажем, компьютера X-MP фирмы Cray Research Corp. Старшая модель серии, iPSC-VX/d6, например, стоит 850 тыс. долл. (см. таблицу), тогда как соответствующая по производительности машина фирмы Cray продается за 8—10 млн. долл.

Характеристики машин семейства iPSC-VX

Характеристика

iPSC-VX/d4

iPSC-VX/d5

iPSC-VX/d6

Число узлов

16

32

64

Объем памяти, Мбайт

24

48

96

Максимальная производительность (32-разрядные операции), Мфлопс

320

640

1280

Максимальная производительность (64-разрядные операции), Мфлопс

106

212

424

Цена, тыс. долл.

250

450

850

В фирме Intel считают, что цена машин серии iPSC-VX поможет внедрить их в сферу промышленного производства, а также научно-исследовательских работ. Чтобы ускорить и упростить продвижение ЭВМ iPSC-VX в эти секторы, специалисты указанной фирмы спроектировали машины с архитектурой, обеспечивающей несложное наращивание производительности, и разработали инструментальные программные средства и утилиты на Фортране, оптимизировав их для векторной обработки.

Машины серии iPSC построены на основе архитектуры Hypercube («Гиперкуб»), разработанной в Калифорнийском технологическом институте. В таком мультипроцессорном комплексе любой процессор соединен с каждым из остальных, в результате чего получается параллельная система. Специалисты фирмы Intel называют параллельную архитектуру машин серии iPSC системой совместной обработки. В структурах традиционных суперкомпьютеров выполнение базовых вычислительных функций распределяется между одним или двумя процессорами. С этими машинами прежних типов в последнее время стали конкурировать компьютеры с параллельной архитектурой, такой, как Hypercube. Их аппаратную часть легко расширять с целью увеличения производительности, однако разработка оптимизированных прикладных программ значительно более трудна1{Электроника, 1986, №5, «Методы, схемы, аппаратура»}.

Каждый узел машин серии iPSC-VX содержит платы узлового и векторного процессоров (рис.1). Узлы соединяются между собой рядом каналов связи с большой пропускной способностью. Каждый процессор связан также с главным процессором системы — «администратором куба» (cube manager). В качестве такого главного процессора используется микрокомпьютер 80286/310 фирмы Intel, работающий под управлением операционной системы Xenix. Он имеет доступ к оперативной памяти объемом 3 Мбайт, винчестерскому НМД емкостью 140 Мбайт, 320-кбайт НГМД и памяти на НМЛ емкостью 45 Мбайт.

Узловые пары. Каждый узел состоит из платы узлового процессора (вверху) на базе микропроцессора 30286 и платы векторного процессора.
Рис.1. Узловые пары. Каждый узел состоит из платы узлового процессора (вверху) на базе микропроцессора 30286 и платы векторного процессора.

Каждый узловой процессор смонтирован на печатной плате размером 229*279 мм, на которой размещены центральный процессор 80286 фирмы Intel, арифметический сопроцессор 80287, осуществляющий операции с плавающей точкой, 512К памяти на динамических ЗУПВ и ПЗУ емкостью 64К. Узловым процессором управляет операционная система MBOS, функционирующая по принципу обработки сообщений и занимающая небольшой объем памяти. Узловой процессор и ОС MBOS берут на себя основную нагрузку по координации трафика входящих и исходящих сообщений узла, планированию и выполнению процессов пользователя и управлению векторным процессором, подключенным к узлу.

Векторный процессор — это блок арифметической обработки с высокой степенью оптимизации (рис.2). Плата векторного процессора, которую компания Intel разработала в сотрудничестве с фирмой Sky Computers Inc. (Лоуэлл, шт.Массачусетс), содержит арифметическое устройство для операций с плавающей точкой, блок манипуляций данными и устройство управления. Векторный процессор построен на основе синхронной микропрограммной архитектуры; время его цикла составляет 100 нс.

Блок численной обработки. Векторный процессор представляет собой арифметическое устройство с высокой степенью оптимизации, выполняющее сложные математ
Рис.2. Блок численной обработки. Векторный процессор представляет собой арифметическое устройство с высокой степенью оптимизации, выполняющее сложные математические операции.

Арифметические функции

Арифметическое устройство для операций с плавающей точкой, состоящее из сумматора и умножителя, действует как конвейеризованный процессор. Сумматор построен на основе АЛУ типа 3220 фирмы Analog Devices Inc., выполняющего операции с плавающей точкой над 32- и 64-разрядными числами. Умножитель — это ИС типа 3210 той же фирмы, способная осуществлять 10 млн. умножений с плавающей точкой в секунду над 32-разрядными операндами или 3,3 млн. таких же операций в секунду над 64-разрядными числами. 12 регистров умножителя хранят промежуточные результаты и направляют данные в арифметические элементы. Указанные операции отвечают стандарту IEEE-754 на арифметику с плавающей точкой. Обеспечивается также выполнение операций с фиксированной точкой и логические действия над 32-разрядными числами.

Аппаратная часть арифметического блока оптимизирована для реализации умножения и сложения в матричной форме; это достигается тем, что блок манипуляций данными содержит АЛУ с 32-разрядными адресами, оснащенное локальным ОЗУ емкостью 1 Мбайт для векторных данных, где хранятся операнды. Время доступа к 64-разрядным словам составляет 250 нс.

Указанное ОЗУ дополнено статическим оперативным ЗУ емкостью 16К байт, для которого время доступа к 64-разрядным словам составляет 100 нс. Это быстродействующее ЗУ служит в качестве временной, или сверхоперативной, памяти; оно позволяет значительно ускорить выполнение операций. При использовании быстродействующего ОЗУ для хранения данных максимальная производительность платы векторного процессора может достигать 6,67 Мфлопс при операциях над 64-разрядными словами и 20 Мфлопс при операциях над словами длиной 32 бит.

Адреса локального ОЗУ отображаются, кроме того, в адресное пространство узлового процессора, что увеличивает общий объем памяти узла до 1,5 Мбайт. Хотя подлежащие обработке операнды размещаются только в локальном ОЗУ векторного процессора, для хранения программ и данных можно использовать всю 1,5-Мбайт память.

В устройстве управления (УУ) ОЗУ предусмотрено ОЗУ программ емкостью 32К байт, информацию в которое можно загружать из узлового ЦП 80286. ОЗУ программ содержит команды для имеющегося в УУ контроллера последовательности микроопераций, который позволяет УУ координировать работу блока манипуляций данными и арифметического устройства с плавающей точкой. В число стандартных микропрограмм входят монитор режима исполнения рабочих программ и Veclib — оптимизированная библиотека векторных, скалярных и логических операций.

Для обеспечения эффективной связи между узлами каждая плата узлового процессора содержит сопроцессор 82586, организующий операции связи через локальную сеть и управляющий семью дуплексными двухточечными каналами связи. Шесть каналов соединяют узел с его ближайшими соседями, а один канал, отвечающий стандарту на сеть Ethernet, сопрягает его с «администратором куба». Восьмой канал зарезервирован для будущих расширений системы. Шесть таких связей между ближайшими «соседями» предусматривают прямой доступ к памяти всех узлов, взаимодействующих между собой. Управление глобальными связями в системе осуществляется при помощи быстродействующей платы передачи данных типа iSBC 186/51. Посредством поставляемого по отдельному заказу блока, реализующего протокол TCP/IP1{Ethernet Transmission Control Protocol/Internet Protocol} (Протокол управления передачей данных/Межсетевой протокол) для сети Ethernet, всю эту систему серии iPSC можно также присоединять к универсальной ЭВМ или супермини-компьютеру.

Эффективность программного обеспечения

Создатели программного обеспечения для систем iPSC-VX воспользовались комплексом средств разработки программного обеспечения и утилитами исходного семейства iPSC, ориентированными на язык Фортран, который наиболее широко применяется для программирования суперкомпьютерной техники. Фирма Intel предлагает свой вариант этого языка, Фортран 286, однако заказчики могут также получить ассемблер 286 компании Microsoft Corp., а в будущем предусматривается выпустить средства разработки программ на других языках. В комплекс инструментальных средств программирования для систем iPSC-VX входят собственно средства разработки, оптимизирующий Фортран-компилятор, векторизующий Фортран-препроцессор, программа моделирования, набор средств для составления микрокода и библиотека математических операций Veclib.

Ключом к эффективности разработки программного обеспечения служит параллелизм, основанный на использовании большой вычислительной мощности систем iPSC-VX. С целью достижения наилучших результатов на параллельных компьютерах выполняемые программы должны быть разделены на части, которые могут функционировать в отдельных узлах. Написание таких программ — это непростая задача для программистов, поскольку в большинстве случаев далеко не очевидно, каким образом следует расчленять исходную программу.

Для того чтобы автоматизировать данный процесс, специалисты фирмы Intel разработали векторизующий препроцессор под названием VXP. При использовании стандартной программы на Фортране 77 препроцессор VXP «извлекает» из нее части, ориентированные на вычисления, и разделяет их для последующей передачи в векторный процессор. Это делается путем замены векторизуемых сегментов кода векторными операциями: математические операторы и программы в первоначальном исходном коде заменяются директивами, которые поступают на векторный процессор.

Эффективность векторной обработки обеспечивается также наличием библиотеки микрокодов математических операций Veclib. Она содержит 100 стандартных программ, запускаемых вызовами подпрограмм на Фортране; такая организация оптимизирует скалярные, векторные и матричные операции. Фирма Intel предлагает также (по отдельным заказам) средства разработки микрокодов, что позволяет пользователям вводить в Veclib специализированные программы.

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

Дочерние статьи:

Разработчики нового семейства суперкомпьютеров фирмы Intel

Выходные данные:

Журнал "Электроника" том 59, No.08 (741), 1986г - пер. с англ. М.: Мир, 1986, стр.43

Electronics Vol.59 No.15 April 14, 1986 A McGraw-Hill Publication

Electronics Vol.59 No.16 April 21, 1986 A McGraw-Hill Publication

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Вычислительная техника





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/Intel/D19860812Elc025.shtml