🗊Лекция 2 Методы построения параллельных программ Учебный курс Введение в параллельные алгоритмы

Категория: Информатика
Нажмите для полного просмотра!
Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №1Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №2Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №3Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №4Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №5Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №6Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №7Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №8Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №9Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №10Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №11Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №12Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №13Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №14Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №15Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №16Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №17Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №18Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №19Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №20Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №21Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №22Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №23Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №24Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №25Лекция 2 Методы построения параллельных программ  Учебный курс  Введение в параллельные алгоритмы, слайд №26

Содержание

Вы можете ознакомиться и скачать Лекция 2 Методы построения параллельных программ Учебный курс Введение в параллельные алгоритмы. Презентация содержит 26 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Лекция 2
Методы построения параллельных программ
Учебный курс
Введение в параллельные алгоритмы
Описание слайда:
Лекция 2 Методы построения параллельных программ Учебный курс Введение в параллельные алгоритмы

Слайд 2





Предварительные замечания
    … если для нас представляют интерес реально работающие системы, то требуется убедиться, (и убедить всех сомневающихся) в корректности наших построений
   … системе часто придется работать в невоспроизводимых обстоятельствах, и мы едва ли можем ожидать сколько-нибудь серьезной помощи от тестов
Dijkstra E.W.
1966
Описание слайда:
Предварительные замечания … если для нас представляют интерес реально работающие системы, то требуется убедиться, (и убедить всех сомневающихся) в корректности наших построений … системе часто придется работать в невоспроизводимых обстоятельствах, и мы едва ли можем ожидать сколько-нибудь серьезной помощи от тестов Dijkstra E.W. 1966

Слайд 3





Содержание лекции
Методы построения параллельных алгоритмов и их свойства:
Статическая балансировка
метод сдваивания
геометрический параллелизм
конвейерный параллелизм
Динамическая балансировка
коллективное решение
Пример задачи, для параллельного решения которой необходимо создание качественно нового алгоритма
Описание слайда:
Содержание лекции Методы построения параллельных алгоритмов и их свойства: Статическая балансировка метод сдваивания геометрический параллелизм конвейерный параллелизм Динамическая балансировка коллективное решение Пример задачи, для параллельного решения которой необходимо создание качественно нового алгоритма

Слайд 4





Хороший параллельный алгоритм
Обладает запасом внутреннего параллелизма
Есть возможность одновременного выполнения операций
Допускает возможность равномерного распределения вычислительных операций между процессорами
Обладает низким уровнем накладных расходов
Описание слайда:
Хороший параллельный алгоритм Обладает запасом внутреннего параллелизма Есть возможность одновременного выполнения операций Допускает возможность равномерного распределения вычислительных операций между процессорами Обладает низким уровнем накладных расходов

Слайд 5





Накладные расходы
Операции, отсутствующие в наилучшем последовательном алгоритме:
Синхронизация
Обмен данными
Дублирование операций
Новые операции
Описание слайда:
Накладные расходы Операции, отсутствующие в наилучшем последовательном алгоритме: Синхронизация Обмен данными Дублирование операций Новые операции

Слайд 6





Обмен данными
Потери времени на передачу данных между процессами
               Процессор 1	 Процессор 2
Описание слайда:
Обмен данными Потери времени на передачу данных между процессами Процессор 1 Процессор 2

Слайд 7





Синхронизация
Потери времени на ожидание долго выполняющихся процессов
     
           Процессор 1      Процессор 2      Процессор 3
Описание слайда:
Синхронизация Потери времени на ожидание долго выполняющихся процессов Процессор 1 Процессор 2 Процессор 3

Слайд 8





Дублирование операций
S=0;
For(i=0;i<n1;i++)
     S+=a[i];
Send(S)
Описание слайда:
Дублирование операций S=0; For(i=0;i<n1;i++) S+=a[i]; Send(S)

Слайд 9





Вычисление всех факториалов до 8! включительно
Описание слайда:
Вычисление всех факториалов до 8! включительно

Слайд 10





Вычисление всех факториалов до 8! включительно
Описание слайда:
Вычисление всех факториалов до 8! включительно

Слайд 11





Метод сдванивания
Каскадная схема
Модифицированная каскадная схема 
В.П.Гергель Основы параллельных вычислений, лекция 4, слайд 23
Описание слайда:
Метод сдванивания Каскадная схема Модифицированная каскадная схема В.П.Гергель Основы параллельных вычислений, лекция 4, слайд 23

Слайд 12





Стена Фокса
Описание слайда:
Стена Фокса

Слайд 13





Метод геометрического параллелизма
Описание слайда:
Метод геометрического параллелизма

Слайд 14





Метод коллективного решения (укладка паркета)
Описание слайда:
Метод коллективного решения (укладка паркета)

Слайд 15





Метод коллективного решения (укладка паркета)
Описание слайда:
Метод коллективного решения (укладка паркета)

Слайд 16





Вычисление определенного интеграла
Send(ai); Send(ai+1); Recv(s);
Описание слайда:
Вычисление определенного интеграла Send(ai); Send(ai+1); Recv(s);

Слайд 17





Метод конвейерного параллелизма
Описание слайда:
Метод конвейерного параллелизма

Слайд 18






Статическая и динамическая балансировка загрузки процессоров
Статическая балансировка
метод сдваивания
геометрический параллелизм
конвейерный параллелизм
Динамическая балансировка
коллективное решение
Описание слайда:
Статическая и динамическая балансировка загрузки процессоров Статическая балансировка метод сдваивания геометрический параллелизм конвейерный параллелизм Динамическая балансировка коллективное решение

Слайд 19





Определение суммы двух многоразрядных чисел
r=0;
for(i=0;i<=n;i++)
	{
	d=a[i]+b[i]+r;
	c[i]=d%10;
	r=d/10;
	}
c[i]=r;
Описание слайда:
Определение суммы двух многоразрядных чисел r=0; for(i=0;i<=n;i++) { d=a[i]+b[i]+r; c[i]=d%10; r=d/10; } c[i]=r;

Слайд 20





«Параллельный» алгоритм
Описание слайда:
«Параллельный» алгоритм

Слайд 21





Спекулятивный алгоритм
Спекулятивное вычисление двух сумм
Описание слайда:
Спекулятивный алгоритм Спекулятивное вычисление двух сумм

Слайд 22





Спекулятивный алгоритм
r1=0;			
r2=1;
for(i=0;i<=n1;i++)
	{
	d1=a[i]+b[i]+r1;	
	c1[i]=d1%10;	
	r1=d1/10;			
	d2=a[i]+b[i]+r2;
   c2[i]=d2%10;
   r2=d2/10;
   }
Recv(&r)
if(r)c=c1;
else c=c2;
Описание слайда:
Спекулятивный алгоритм r1=0; r2=1; for(i=0;i<=n1;i++) { d1=a[i]+b[i]+r1; c1[i]=d1%10; r1=d1/10; d2=a[i]+b[i]+r2; c2[i]=d2%10; r2=d2/10; } Recv(&r) if(r)c=c1; else c=c2;

Слайд 23





Спекулятивный алгоритм
Спекулятивное вычисление двух сумм
Описание слайда:
Спекулятивный алгоритм Спекулятивное вычисление двух сумм

Слайд 24





Заключение
Рассмотрены методы построения параллельных алгоритмов
Рассмотрена проблема балансировки загрузки процессоров
Представлен масштабируемый параллельный метод сложения многоразрядных чисел, основанный на неэффективном последовательном алгоритме
Описание слайда:
Заключение Рассмотрены методы построения параллельных алгоритмов Рассмотрена проблема балансировки загрузки процессоров Представлен масштабируемый параллельный метод сложения многоразрядных чисел, основанный на неэффективном последовательном алгоритме

Слайд 25





Вопросы для обсуждения
В чем заключается проблема балансировки загрузки?
В чем заключаются методы геометрического параллелизма, конвейерного параллелизма и коллективного решения?
Чем определяются максимальные ускорения, достигаемые при применении этих методов?
В чем отличие методов статической и динамической балансировки загрузки?
Описание слайда:
Вопросы для обсуждения В чем заключается проблема балансировки загрузки? В чем заключаются методы геометрического параллелизма, конвейерного параллелизма и коллективного решения? Чем определяются максимальные ускорения, достигаемые при применении этих методов? В чем отличие методов статической и динамической балансировки загрузки?

Слайд 26





Контакты
Якобовский М.В. 
д.ф.-м.н., 
зав. сектором 
«Программного обеспечения многопроцессорных систем и вычислительных сетей» 
Института математического моделирования 
Российской академии наук
mail: lira@imamod.ru 
web: http://lira.imamod.ru
Описание слайда:
Контакты Якобовский М.В. д.ф.-м.н., зав. сектором «Программного обеспечения многопроцессорных систем и вычислительных сетей» Института математического моделирования Российской академии наук mail: lira@imamod.ru web: http://lira.imamod.ru



Похожие презентации
Mypresentation.ru
Загрузить презентацию