Upload
phelan-mcmillan
View
58
Download
3
Embed Size (px)
DESCRIPTION
Институт вычислительной математики РАН. Воеводин В.В. ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ. Томск, 2003. Почему возникают проблемы пользователей? Проблемы пользователей в примерах. Математические трудности решения проблемы. Информационная структура алгоритмов. Не научные проблемы. - PowerPoint PPT Presentation
Citation preview
Институт вычислительной математики РАН
Томск, 2003
Воеводин В.В.
ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ
• Почему возникают проблемы Почему возникают проблемы пользователей?пользователей?
• Проблемы пользователей в примерах.Проблемы пользователей в примерах.
• Математические трудности решения Математические трудности решения проблемы.проблемы.
• Информационная структура алгоритмов.Информационная структура алгоритмов.
• Не научные проблемы.Не научные проблемы.
Увеличение производительности ЭВМ - Увеличение производительности ЭВМ - за счет чего?за счет чего?
EDSAC, 1949 год HP Superdome, 2001 год
такт: 2*10-6с 1.5*103 1.3*10-9с
произв.: 102 оп/с 1.9*109 1.9*1011 оп/c
Earth Simulator - Earth Simulator - первое место в первое место в Top500Top500
• 5120 процессоров (640 * 8)
• Оперативная память - 10Тбайт
• Пиковая производительность - 40Tflops
• Производительность по Linpack - 35Tflops
flops - floating operations per second
M - 106, G - 109, T - 1012
Системы параллельного Системы параллельного программирования программирования
• Зарубежные: Linda, PVM, MPI, High Performance Fortran, OpenMP ...
• Отечественные: НОРМА, DVM, Т-система, mpC ...
Все системы в той или иной мере требуют от пользователя дополнительную информацию
Откуда брать дополнительную Откуда брать дополнительную информацию?информацию?
Образование и штатное программное обеспечение слабоподдерживают процессы ее получения.
• Почему возникают проблемы Почему возникают проблемы пользователей?пользователей?
• Проблемы пользователей в примерах.Проблемы пользователей в примерах.
• Математические трудности решения Математические трудности решения проблемы.проблемы.
• Информационная структура алгоритмов.Информационная структура алгоритмов.
• Не научные проблемы.Не научные проблемы.
Результаты оптимизации программыРезультаты оптимизации программыTRFD TRFD из пакета из пакета PERFECT CLUB PERFECT CLUB
BENCHMARK BENCHMARK на суперкомпьютерах на суперкомпьютерах CRAYCRAY
Baseline - результаты, полученные с помощью штатного компилятора
Manual opt. - результаты, полученные с помощью ручной оптимизации специалистами высокого класса
V-Ray opt. - результаты, полученные на основе информации, выданной V-Ray system
M90CPUs
BaselineMflop/s
Manual opt.Mflop/s
V-Ray opt.Mflop/s
148
56.1954.8654.34
81.72261.64481.03
247822954
C90CPUs
BaselineMflop/s
Manual opt.Mflop/s
V-Ray opt.Mflop/s
18
89.589.6
139.71962.68
579.72440.5
Пользователь: почему?Пользователь: почему?
Aijk = Ai-1jk + Bjk + Bjk, i=1,40; j=1,40; k=1,1000
do k = 1, 1000
do j = 1, 40
do i = 1, 40
A(i,j,k) = A(i-1,j,k)+B(j,k)+B(j,k)
Производительность: 20 Mflops на Cray Y-MP C90
Пользователь: почему?Пользователь: почему?
Aijk = Ai-1jk + Bjk + Bjk, i=1,40; j=1,40; k=1,1000
do i = 1, 40, 2
do j = 1, 40
do k = 1, 1000
A(i,j,k) = A(i-1,j,k)+2*B(j,k)
A(i+1,j,k) = A(i,j,k)+2*B(j,k)
Производительность: 700 Mflops на Cray Y-MP C90
DO i = 1, n
DO j = 1, n
U( i + j ) = U( 2*n – i – j + 1)*q + p
EndDO
EndDO
Простой пример...Простой пример...
DO i = 1, n
DO j = 1, n – i
U( i + j ) = U( 2*n – i – j + 1)*q + p
End DO
DO j = n – i + 1, n
U( i + j ) = U( 2*n – i – j + 1)*q + p
End DO
End DO
Простой пример...Простой пример...
Факт: нет хороших технологий “распараллеливания” вычислений и адаптации программ к требованиям больших вычислительных систем
Причина: в нужной мере не владеем знаниями и возможностями новой междисциплинарной математической области исследований - информационной структуры алгоритмов, объединяющей алгоритмы, программирование, модели вычислительных систем и др.
• Почему возникают проблемы Почему возникают проблемы пользователей?пользователей?
• Проблемы пользователей в примерах.Проблемы пользователей в примерах.
• Математические трудности решения Математические трудности решения проблемы.проблемы.
• Информационная структура алгоритмов.Информационная структура алгоритмов.
• Не научные проблемы.Не научные проблемы.
П рограммыМ атематическое описание
алгоритмов
Л.Лампорт и др. (1973 г.) А .П .Ерш ов и др. (1973 г.)С хемы
программ
Граф ы зависимостей М инимальны е граф ы зависимостей
Достаточны е условия
Тупик
И нф ормационная структура алгоритмов
М ногочисленные междисциплинарны е связи
Граф овые модели алгоритмов
DO i = 1,n DO j = 1,n-i+1
A(I,J) = … B (I,J) … B(I,J) = … A (I,J) …
ENDDOENDDO
Л.Лампорт
А.П.Ершовi
j
DO i = 1,n DO j = 1,n-i+1
A(I,J) = … B (I,J-1) … B(I,J) = … A (I,J) …
ENDDOENDDO
Л.Лампорт
А.П.Ершов
i
j
S = 0DO i = 1,n
S = S + A(I)
ENDDO
Л.Лампорт
А.П.Ершов
Базовая математическая задача Базовая математическая задача
Для любого вектора I ΩN построить множество векторов Ji Ωi
N, удовлетворяющих уравнениям:
piN(Ji) = qN(I),
и на этих множествах найти вектор J = J(I, N), лексикографически ближайший к I снизу.
Все объекты зависят от вектора внешних переменных N, который на момент решения базовой задачи неизвестен.
Решение необходимо находить точно и в явном виде.
• Почему возникают проблемы Почему возникают проблемы пользователей?пользователей?
• Проблемы пользователей в примерах.Проблемы пользователей в примерах.
• Математические трудности решения Математические трудности решения проблемы.проблемы.
• Информационная структура алгоритмов.Информационная структура алгоритмов.
• Не научные проблемы.Не научные проблемы.
Численные методы: огромное разнообразие; почти нет сведений об их структуре на уровне отдельных операций;
Языки программирования: большое разнообразие; зависимость от архитектуры параллельных компьютеров; трудно получать необходимую для программирования информацию, особенно касающуюся “параллельной” структуры алгоритмов;
Компиляторы: плохая диагностика и алгоритмы распараллеливания программ; более 85% индексных выражений не анализируются илианализируются плохо (Zhiyu Shen и другие, 1990)
Операционные системы: не эффективные алгоритмы распределения заданий между процессорами, особенно при работе с медленной памятью;
Компьютеры: большое разнообразие архитектур: отсутствие формализованной теории создания архитектуры;
Анализ вычислений: мало инструментальных средств для анализапричин не эффективного использования компьютеров.
ОСНОВНАЯ ЦЕЛЬ ИССЛЕДОВАНИЙ
РЕШАТЬ ЗАДАЧИ
БЫСТРЕЕДЕШЕВЛЕ
ПРОЩЕ
НУЖЕН КОМПЛЕКСНЫЙ АНАЛИЗВСЕХ ЭТАПОВ !
"Определение" алгоритма
машина Тьюринга
АЛГОРИТМЫвходные данные
последовательные языки программирования
обыкновенные компьютеры
машина Тьюринга с памятью
скорость
параллелизм
нет подходящего "определения" параллельного алгоритма
АЛГОРИТМЫвходные данные
изучение структуры алгоритмов
нет подходящего определения параллельного компьютера
кластерывекторные, систолические, конвейерные, матричные,
параллельные, спецпроцессоры и другие
что делать, если что-то не так?
дополнительные сведения
PVM
HPFMPI
Linda
НормаmpCHPC DVM
Фортран, Си
нет подходящего "определения" параллельного алгоритма
АЛГОРИТМЫвходные данные
Система исследования
структуры V-Ray граф-машина
нет подходящего определения параллельного компьютера
дополнительные сведения НЕ параллельные
математические задачи
Информационная структура
алгоритмов
преобразование программ
типовых информационных структур немного
Метакомпьютинг? Метакомпьютинг!Метакомпьютинг? Метакомпьютинг!
• НИВЦ МГУ (Москва) - 112 процессоров• НИИЯФ МГУ (Москва) - 36 процессоров• ИПС РАН (Переславль-Залесский) - 32 процессора• ИММ УрО РАН (Екатеринбург) - 15 процессоров• УГАТУ (Уфа) - 60 процессоров• Взаимодействие - через Интернет
Задача - определение скрытой периодичности в генетических последовательностях,
Центр “Биоинженерия” РАН
Метакомпьютинг? Метакомпьютинг!Метакомпьютинг? Метакомпьютинг!
-50
0
50
100
150
200
250
300
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
LHC
UFA
PER
UM16
SRCC
Total
Информационная структура алгоритмовИнформационная структура алгоритмов
• Для широкого класса алгоритмов и программ разработаны эффективные методы нахождения всех графов зависимостей. Графы точно описываются конечными наборами простых функций.
• Используя явное представление графов, разработаны эффективные методы их исследования. Теперь об этих графах можно узнать практически все.
• Построена первая очередь автономной системы V-Ray system для обнаружения параллелизма в больших программных комплексах.
• Обнаружены многочисленные междисциплинарные связи.
Близкие проблемыБлизкие проблемы
• Быстрое вычисление градиента и производной• Быстрое восстановление линейного функционала• Анализ влияния ошибок округления• Декомпозиция алгоритмов• Восстановление математических формул• Обнаружение узких мест алгоритма (по памяти, точности и т.п.)• Разработка параллельных численных методов• Разработка переносимого программного обеспечения• Использование распределенной и иерархической памяти• Выбор оптимальной архитектуры компьютера• Построение систолических массивов• Разработка параллелизующих компиляторов и многое другое
ГипотезаГипотеза
Типовых
информационных структур алгоритмов
в конкретных областях
немного
Практика подтверждает гипотезу
• Архитектуры параллельных вычислительных систем• Технологии параллельного программирования• Вычислительный полигон• Конфигурации современных кластерных систем• Учебные материалы, курсы, лекции, тестирование• Новости, рассылка, обмен опытом• История, персоналии, списки конференций• Параллельные вычисления в России• Среда общения профессионалов• ...
Центр создан при поддержке РФФИ
Информационно-аналитический Информационно-аналитический Центр в сети ИнтернетЦентр в сети Интернет
WWW.PARALLEL.RUWWW.PARALLEL.RU
• Почему возникают проблемы Почему возникают проблемы пользователей?пользователей?
• Проблемы пользователей в примерах.Проблемы пользователей в примерах.
• Математические трудности решения Математические трудности решения проблемы.проблемы.
• Информационная структура алгоритмов.Информационная структура алгоритмов.
• Не научные проблемы.Не научные проблемы.
Не научные проблемыНе научные проблемы
• катастрофическая нехватка кадров, особенно высококвалифицированных,
• недостаточная образованность на разных уровнях,
• недооценка трудностей использования больших вычислительных систем,
• разрозненность усилий специалистов,
• отсутствие учебников и учебных пособий,
• отсутствие полноценного программного сервиса,
• внедрение новых образовательных технологий,
• нерешительность в принятии волевых решений,
• ...
ПАРАЛЛЕЛЬНЫЕ ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯВЫЧИСЛЕНИЯ
В.В.Воеводин, Вл.В.Воеводин
Рекомендовано Министерством образования РоссийскойФедерации в качестве учебного пособия для студентов высших
учебных заведений, обучающихся по направлению 510200“Прикладная математика и информатика”
БХВ-Петербург, 2002
КОМУ и ЗАЧЕМ ЭТО НАДО?КОМУ и ЗАЧЕМ ЭТО НАДО?
количество экземпляров 3000
число страниц 608
количество знаков 2000000
размеры 24 см 17 см 3 см
вес 1 кг
время написания 500 дней + 20 лет