Скачать презентацию Распределенные вычисления Введение в распределенные вычисления Сети Петри Скачать презентацию Распределенные вычисления Введение в распределенные вычисления Сети Петри

f04f231b99e3b0ba5b5eeb6458e7b161.ppt

  • Количество слайдов: 37

Распределенные вычисления Введение в распределенные вычисления. Сети Петри. Лекция 1 Подготовил: Хованский Е. П. Распределенные вычисления Введение в распределенные вычисления. Сети Петри. Лекция 1 Подготовил: Хованский Е. П. Мар. ГТУ 2008 г. 1

Лабораторные работы. Требования n n Языки программирования: С++ и C# под MS Visual Studio Лабораторные работы. Требования n n Языки программирования: С++ и C# под MS Visual Studio 2003, 2005 – для C# (для поддержки семафоров). Исходный код и стабильно работающая программа. Схема потоков, как в примерах к 1 и 2 работе или, желательно, использовать Сети Петри (программа находится в папке HelpСети_Петри) (для первых двух лабораторных). Защита лабораторных работ: презентовать свою работу ( «похвалить» её) и рассказать основные моменты реализации. Мар. ГТУ 2008 г. 2

Баллы. Лабораторные работы n n Максимальное количество баллов за работу: 10 баллов. Время на Баллы. Лабораторные работы n n Максимальное количество баллов за работу: 10 баллов. Время на выполнение – 2 недели, затем количество полученных вами баллов будет снижено на 1/4, а еще через две недели еще на 1/4, и так далее. . . То есть формула дисконтирования следующая: n Где S 0 – количество заработанных за решение баллов, а w – количество потраченных на выполнение недель. Мар. ГТУ 2008 г. 3

Баллы. Теория n n За пропуск одной лекции минус 2 балла. Контрольные проверочные работы Баллы. Теория n n За пропуск одной лекции минус 2 балла. Контрольные проверочные работы (10 -12 минут) – 3 -5 баллов за работу. Мар. ГТУ 2008 г. 4

Лабораторные работы. Бонусы n n Сдача лабораторной на неделю раньше срока – бонус 1 Лабораторные работы. Бонусы n n Сдача лабораторной на неделю раньше срока – бонус 1 балл, на две недели – бонус 2 балла и т. д. Сроки сдачи: n n n 1 – 22 - 29 сентября; 2 – 6 - 13 октября; 3 – 20 - 27 октября; и т. д. Всего работ 5 -7. Те кто сделает 7 лабораторную (при условии сделанных 6 предыдущих), в качестве бонуса можно будет ее засчитать за РГР в следующем семестре. P. S. Требования к защите лабораторных работ могут быть изменены преподавателем. Мар. ГТУ 2008 г. 5

Система ритм 100% = 1, 5*(5*Л + Т) + доп. бал n 100% = Система ритм 100% = 1, 5*(5*Л + Т) + доп. бал n 100% = 1, 5*(5*10+10) + 10 Максимальный возможный процент: n 142, 5% = 1, 5*(7*10+15) + 15 n На « 5» - 90% На « 4» - 75% На « 3» - 60% Мар. ГТУ 2008 г. 6

Организация параллельности вычислений n n введения избыточности функциональных устройств (многопроцессорности); разработка и оптимизация алгоритмов. Организация параллельности вычислений n n введения избыточности функциональных устройств (многопроцессорности); разработка и оптимизация алгоритмов. Мар. ГТУ 2008 г. 7

Избыточность функциональных устройств n n Супер ЭВМ. Сети. Кластеры. Многоядерные процессоры. Мар. ГТУ 2008 Избыточность функциональных устройств n n Супер ЭВМ. Сети. Кластеры. Многоядерные процессоры. Мар. ГТУ 2008 г. 8

Параллельные Вычисления. n n n Потери производительности для организации параллелизма (гипотеза Минского) – ускорение Параллельные Вычисления. n n n Потери производительности для организации параллелизма (гипотеза Минского) – ускорение a ~ log 2 N, где N число процессоров. Существование последовательных вычислений. Закон Амдаля об ускорении процесса вычисления: Где f – доля последовательных вычислений. Мар. ГТУ 2008 г. 9

Проблематика параллельных вычислений. n n Зависимость эффективности параллелизма от учета характерных свойств параллельных систем Проблематика параллельных вычислений. n n Зависимость эффективности параллелизма от учета характерных свойств параллельных систем Существующее программное обеспечение ориентировано в основном на последовательные ЭВМ Мар. ГТУ 2008 г. 10

Направления исследований. n n n разработка параллельных вычислительных систем; анализ эффективности параллельных; формирование общих Направления исследований. n n n разработка параллельных вычислительных систем; анализ эффективности параллельных; формирование общих принципов разработки параллельных алгоритмов для решения сложных вычислительно трудоемких задач создание и развитие системного программного обеспечения для параллельных вычислительных систем создание и развитие параллельных алгоритмов для решения прикладных задач в разных областях практических приложений. Мар. ГТУ 2008 г. 11

Пути достижения параллелизма. n n независимость функционирования отдельных устройств ЭВМ; избыточность элементов вычислительной системы: Пути достижения параллелизма. n n независимость функционирования отдельных устройств ЭВМ; избыточность элементов вычислительной системы: n n n использование специализированных устройств; дублирование устройств ЭВМ путем использования; конвейерная реализация обрабатывающих устройств. Мар. ГТУ 2008 г. 12

Режимы исполнения программ n n n многозадачный режим (режим разделения времени); параллельное выполнение; распределенные Режимы исполнения программ n n n многозадачный режим (режим разделения времени); параллельное выполнение; распределенные вычисления. n Распределённые вычисле ния (distributed computing, grid computing, volunteer computing) — способ решения трудоёмких вычислительных задач с использованием двух и более компьютеров объединённых в сеть. Мар. ГТУ 2008 г. 13

Некорректное вычисление данных n Пусть необходимо начислить зарплату и вычислить сумму денег, подлежаыщих выдаче Некорректное вычисление данных n Пусть необходимо начислить зарплату и вычислить сумму денег, подлежаыщих выдаче на руки. Оставляя в стороне излишние здесь детали, будем предполагать, что зарплату составляют некоторая базисная зарплата N 0 плюс надбавки N 1, N 2, . . . , Nn (выражаются в процентах к базисной зарплате) минус налог Nn-1 (выражаются в процентах к начисленной сумме). Мар. ГТУ 2008 г. 14

Некорректное вычисление данных • Пусть процессы Р 0, P 1, Р 2, . . Некорректное вычисление данных • Пусть процессы Р 0, P 1, Р 2, . . . , Рn+1 соответственно выполняют эти операции. • Процессы Р 1, P 2, . . . , Рn+1 выполняются асинхронно. (Р 0 + P 1 + Pn+1 + P 2 +. . . + Рn) ≠ (Р 0 + Pn+1 + P 1 + Р 2 +. . . + Рn) Мар. ГТУ 2008 г. 15

Некорректное считывание данных • Пусть в банке А есть счет acc 1, на котором Некорректное считывание данных • Пусть в банке А есть счет acc 1, на котором находится 500 тыс. руб. , а в банке В - счет асс2, на котором находится 300 тыс. руб, и необходимо переслать 100 тыс. руб. со счета асc 1 на счет асс2. Сумма денег на обоих счетах неизменна до и после выполнения пересылки и равна 800 тыс руб. Пусть процесс P 1 посылает деньги из банка А в банк В, а процесс Р 2 принимает посланные деньги в банке B. Мар. ГТУ 2008 г. 16

Некорректное считывание данных. Исходные данные. • А. асс1 = 500 тыс. руб. • В. Некорректное считывание данных. Исходные данные. • А. асс1 = 500 тыс. руб. • В. асс2 = 300 тыс. руб. Мар. ГТУ 2008 г. 17

Некорректное считывание данных. Исходные данные. • А. асс1 = 500 тыс. руб. • В. Некорректное считывание данных. Исходные данные. • А. асс1 = 500 тыс. руб. • В. асс2 = 300 тыс. руб. Мар. ГТУ 2008 г. 18

Некорректное считывание данных. Исходные данные. Процесс Р 1 Процесс Р 2 А. асc 1: Некорректное считывание данных. Исходные данные. Процесс Р 1 Процесс Р 2 А. асc 1: = А. асc 1 - 100; receive (x, A, y); x: = 100 send (x, B, y); B. acc 2: = B. acc 2 + y; Мар. ГТУ 2008 г. 19

Некорректное считывание данных. • сумма А. асс1 + В. асс2 может равняться 700 тыс. Некорректное считывание данных. • сумма А. асс1 + В. асс2 может равняться 700 тыс. руб. (если значение А. асс1 было считано после его изменения, а значение В. асс2 - до изменения) • 800 тыс. руб – считывание после пересылки. • сумма А. асс1 + В. асс2 может равняться 900 тыс. руб. (если значение А. асс1 было считано до его изменения, а значение В. асс2 - после изменения) Мар. ГТУ 2008 г. 20

Определение сети Петри n n математическая модель, которая имеет широкое применение для описания поведения Определение сети Петри n n математическая модель, которая имеет широкое применение для описания поведения параллельных устройств и процессов; есть двудольный ориентированный граф. Мар. ГТУ 2008 г. 21

Определение сети Петри N = (T, P, A), T Р = Ø, где n Определение сети Петри N = (T, P, A), T Р = Ø, где n n n Т = {t 1, t 2, . . . , tn} - подмножество вершин, называющихся переходами; Р = {p 1, р2, . . . , pm} - подмножество вершин, называющихся местами; А (T×P) (P×T) - множество ориентированных дуг. Мар. ГТУ 2008 г. 22

Пример № 1 сети Петри граф: Мар. ГТУ продукционные правила: 2008 г. 23 Пример № 1 сети Петри граф: Мар. ГТУ продукционные правила: 2008 г. 23

Разметка сети Петри n n Состояние - определяется системой условий. Фишки – запись, объекты Разметка сети Петри n n Состояние - определяется системой условий. Фишки – запись, объекты и т. д. (изображается точкой) Места – условия в сети (буфер пуст, файл закрыт) (изображается кружком). Переходы – события в сети (посылка или получение сообщения в буфер, запись в файл) (изображается палочкой, чертой). Задается формально: М: Р → I, I = {0, 1, 2, . . } Мар. ГТУ 2008 г. 24

Пример № 2 сети Петри М 0 = {1, 0, 0} Мар. ГТУ 2008 Пример № 2 сети Петри М 0 = {1, 0, 0} Мар. ГТУ 2008 г. М 1 = {1, 1, 1} М 2 = {1, 2, 3} 25

Пример № 2 сети Петри Мар. ГТУ 2008 г. 26 Пример № 2 сети Петри Мар. ГТУ 2008 г. 26

Сеть Петри как устройство Мар. ГТУ 2008 г. 27 Сеть Петри как устройство Мар. ГТУ 2008 г. 27

Граф достижимости n n n Разметка М называется достижимой, если при некоторой последовательности срабатываний Граф достижимости n n n Разметка М называется достижимой, если при некоторой последовательности срабатываний сети, начиная с начальной разметки М 0, она переходит к разметке М. Множество разметок, достижимых в порядке срабатывания сети, представляется разверткой сети. Множество достижимых разметок удобно представлять графом достижимости, который показывает все достижимые разметки и последовательности срабатываний переходов, приводящих к ним. Мар. ГТУ 2008 г. 28

Граф достижимости. Пример 3. Мар. ГТУ 2008 г. 29 Граф достижимости. Пример 3. Мар. ГТУ 2008 г. 29

Дедлоки n Состояние дедлока возникает, когда запрос ресурсов в системе не может быть удовлетворен Дедлоки n Состояние дедлока возникает, когда запрос ресурсов в системе не может быть удовлетворен и система останавливается (ни один переход не может сработать). Мар. ГТУ 2008 г. 30

Дедлоки. Пример 4. Мар. ГТУ 2008 г. 31 Дедлоки. Пример 4. Мар. ГТУ 2008 г. 31

Пример 5. Задача о философах n Пять философов, прогуливаясь и размышляя, время от времени Пример 5. Задача о философах n Пять философов, прогуливаясь и размышляя, время от времени испытывают приступы голода. Тогда они заходят в столовую, где стоит круглый стол, на нем всегда приготовлены пять блюд. Между соседними блюдами лежит одна вилка (всего лежат ровно пять вилок). Мар. ГТУ 2008 г. 32

Пример 5. Задача о философах Голодный философ: n n входит в столовую, садится за Пример 5. Задача о философах Голодный философ: n n входит в столовую, садится за стол и берет вилку слева; берет вилку справа; ест (обязательно двумя вилками); кладет обе вилки на стол, выходит из столовой и продолжает думать. Мар. ГТУ 2008 г. 33

Пример 5. Задача о философах варианты поведения философов: n n Одновременно взяли все левую Пример 5. Задача о философах варианты поведения философов: n n Одновременно взяли все левую вилку; Два философа одновременно взяли одну вилку; Стеснительный философ не должен умирать голодной смертью из-за того, что его вилки постоянно раньше него хватают напористые соседи; Легко представить себе ситуацию, когда банда сговорившихся философов завладеет всеми вилками и, передавая их только в своей среде, уморит голодом всех прочих. Мар. ГТУ 2008 г. 34

Пример 5. Один философ. Мар. ГТУ 2008 г. 35 Пример 5. Один философ. Мар. ГТУ 2008 г. 35

Мар. ГТУ 2008 г. 36 Мар. ГТУ 2008 г. 36

Спасибо за внимание! Мар. ГТУ 2008 г. 37 Спасибо за внимание! Мар. ГТУ 2008 г. 37