node M1(a,b) {i,j}

advertisement
ИНСТИТУТ ПРОБЛЕМ ПРОЕКТИРОВАНИЯ В МИКРОЭЛЕКТРОНИКЕ РАН (ИППМ)
Способы регулирования
вычислений в параллельной
потоковой вычислительной
системе
Д.Н. Змеев, А.В. Климов, Н.Н. Левченко, А.С. Окунев
МОДЕЛЬ ВЫЧИСЛЕНИЙ ППВС «БУРАН»
С УПРАВЛЕНИЕМ ПОТОКОМ ДАННЫХ С ДИНАМИЧЕСКИ
ФОРМИРУЕМЫМ КОНТЕКСТОМ
Программа на DFL = набор узлов
M1(x1,x2){7,6} пакет
…
node M1(a,b) {i,j}
begin
…
a*b –> M2.c{i+1,j};
…
end
…
программа узла
Ассоциативная память
заголовок
узла
x4–> M1.b{9,4}
ожидание
«парного»
токена
токены
x3–>M2.c{8,6}
x2–> M1.b{7,6}
Сопоставление
токенов (при
одинаковом
контексте)
x1–>M1.a{7,6}
i
node M1(a,b){i,j}
имя
узла
входы
узла
контекст
узла
формирование и
посылка
токена
j
формирование
пакета
пакет M1(x1,x2){7,6}
поступает на
вход узла
2
СРАВНЕНИЕ
ПАРАДИГМЫ «СБОРА» И ПАРАДИГМЫ «РАЗДАЧИ»
Парадигма «СБОРА»
Парадигма «РАЗДАЧИ»
(C, Fortran, и др.)
(DFL)
Источник
значение,
адрес в
памяти
адрес в
памяти,
адрес
получателя
Память
Получатель
Источник
значение,
адрес
получателя
Получатель
адрес
получателя,
значение
Источник сохраняет свой результат в
памяти по некоторому адресу, откуда
его запрашивает потребитель по мере
надобности.
В DFL узел-источник сам знает
(вычисляет) адреса всех потребителей,
на которые и рассылает свой результат.
Это облегчает работу аппаратуры при
распределенном выполнении.
3
БАЗОВАЯ АРХИТЕКТУРА ПАРАЛЛЕЛЬНОЙ ПОТОКОВОЙ
ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЫ «БУРАН»
ВЫЧИСЛИТЕЛЬНЫЙ МОДУЛЬ
токен
ИУ 0
ВЫЧИСЛИТЕЛЬНЫЙ МОДУЛЬ
токен
токен
...
пакет
ИУ m-r
ИУ r-1
токен
пакет
...
ИУ m-1
пакет
внутренний коммутатор пакетов
внутренний коммутатор пакетов
ПС 0
...
пакет
пакет
пакет
токен
...
ПС k-1
пакет
ПС n-k
токен
внутренний коммутатор токенов
токен
пакет
...
ПС n-1
токен
внутренний коммутатор токенов
ЯДРО
ЯДРО
коммутатор токенов
4
НОВАЯ АРХИТЕКТУРА СУПЕРКОМПЬЮТЕРНОЙ СИСТЕМЫ
Способность аппаратного
(автоматического)
выявления неявного
параллелизма задачи
Аппаратная поддержка
мелкозернистого
параллелизма
Высокий показатель
реальной
производительности
Выполнение программы
вычислительного узла не
прерывается на подкачку
данных
Архитектура
суперкомпьютерной
системы
Аппаратная
ассоциативная память
Начинать работу можно
до полного
формирования данных
(массива)
Аппаратное
распределение ресурсов
Аппаратная
синхронизация
вычислительных
процессов по данным
5
ОТЛИЧИЕ ППВС «БУРАН» ОТ
КЛАССИЧЕСКИХ DATAFLOW СИСТЕМ
Классические dataflow системы
Модель вычислений ППВС
Языки высокого уровня Sisal, Id, VAL и др. «работают» в
парадигме «сбора».
Новая парадигма программирования – парадигма «раздачи»,
выраженная в языке DFL.
Заранее (статически)
программы.
выполнения
Граф выполнения программы создается (разворачивается) в
процессе вычислений.
(примитивные
Имеется процессор сопоставления с развитой системой команд.
Не были решены проблемы управления локализацией и
планирования вычислений.
Развитые (удобные) средства управления локализацией и
планированием вычислений.
Были трудности с реализацией ассоциативной памяти
ключей и токенов большого объема.
Благодаря реализации функций управления локализацией и
планированием вычислений удалось избежать построения
физической памяти большого объема (иерархия памяти).
Не была реализована
формирования контекста.
Реализована
аппаратная
поддержка
формирования
контекста
и
функций
(формирование токенов и пакетов).
Процессора
команды).
создается
сопоставления
не
граф
было
поддержка
динамического
Целевые узлы определялись в основном статически (были
только элементы динамики).
динамического
взаимодействия
Динамический выбор целевых узлов в узлах-источниках.
6
УПРАВЛЕНИЕ ВЫЧИСЛИТЕЛЬНЫМИ ПРОЦЕССАМИ В
ППВС «БУРАН»
распределение
вычислений
по
(локализация по вычислительным ядрам);
пространству
распределение вычислений во времени (локализация по
этапам);
изменение
пакетов;
алгоритма
работы
буферов
токенов
и
управление с помощью различных методов ввода
данных в систему;
ограничение числа активных временных
(активаций) итераций или функций.
этапов
7
ИНСТИТУТ ПРОБЛЕМ ПРОЕКТИРОВАНИЯ В МИКРОЭЛЕКТРОНИКЕ РАН (ИППМ)
Спасибо за внимание!
Download