Летняя школа по параллельному программированию 2012 Название проекта: Клеточно-автоматное моделирование синхронного режима разделения фаз с помощью MPI.

Презентация:



Advertisements
Похожие презентации
Моделирование процессов образования устойчивых структур с помощью самоорганизующихся клеточных автоматов Летняя школа 2012 Шарифулина Анастасия.
Advertisements

Параллельная реализация экономичных методов параболических задач.
Эффективная параллельная реализация асинхронных клеточно-автоматных алгоритмов Калгин Константин ИВМиМГ СО РАН
Зимняя студенческая школа по параллельному программированию, 2012 Моделирование самогравитирующего вещества методом частиц в ячейках Исполнители: Двореченская.
Сравнительный анализ некоторых методов композиции вычислительных подобластей студент: Данилин Александр научный руководитель: Илюшин Александр Иванович.
Клеточно-автоматное моделирование волновых процессов в неоднородной среде Летняя школа по параллельному программированию 2010 Студенты: Риндевич К., Медянкин.
Разработка многопользовательской игры в дополненной реальности с клиентами на мобильных устройствах. Probing Chat Выполнили: Н.И. Данилов С.Ю. Полищук.
ЗИМНЯЯ СТУДЕНЧЕСКАЯ ШКОЛА ПАРАЛЛЕЛЬНОГО ПРОГРАММИРОВАНИЯ Реализация метода частиц в ячейках FPIC (PIC – Particle In Cell) Исполнитель: Хасина Женя, ФИТ,
Анализ и моделирование производительности трафаретных вычислений на мультипроцессоре Константин Калгин Институт Вычислительной Математики.
Разработка параллельных программ на основе MPI для решения задач линейной алгебры Летняя школа по параллельному программированию 2012 Испольнители проекта:
Проект: Система управления распределенными структурами данных (СУРД) «Разработка MPI-приложения для численного решения уравнения Пуассона» Выполнил: Халяпин.
Реализация модели многочастичного газа FHP-MP на графическом ускорителе Подстригайло Алена, гр Научный руководитель: к.ф.-м.н. Калгин К.В.
Клеточно-автоматные модели диффузионного процесса Участники проекта: Кузнецов Дмитрий, Михайлов Александр, Спешилов Константин. Руководитель: Медведев.
Выполнил студент группы А Буренков Сергей Александрович. Научный руководитель к.т.н., доцент Шамаева Ольга Юрьевна. ОРГАНИЗАЦИЯ И ИССЛЕДОВАНИЕ ПАРАЛЛЕЛЬНО-ПОСЛЕДОВАТЕЛЬНЫХ.
Параллельная реализация метода частиц в ячейках (PIC) в системе Charm++ Студентка: Ткачёва А.А., ФПМИ, 5 курс Руководитель: Перепелкин В.А. Зимняя школа,
Разработка и оптимизация исполнительной системы фрагментированного программирования Руководители: Перепёлкин В.А. Щукин Г.А. Студенты: Беляков С.А. гр.ПМИ-81.
Интернет Университет Суперкомпьютерных технологий Лекция 1 Основные понятия Учебный курс Введение в параллельные алгоритмы Якобовский М.В., д.ф.-м.н. Институт.
1 Исследование алгоритмов решения задачи k коммивояжеров Научный руководитель, проф., д.т.н. Исполнитель, аспирант Ю.Л. Костюк М.С. Пожидаев Томский государственный.
Прерывания Определение прерывания Прерывания представляют собой механизм, позволяющий координировать параллельное функционирование отдельных устройств.
Зимняя Школа Параллельного Программирования 2011 Проект «Фрагментированное Программирование» : генератор графа фрагментированной программы для алгоритма.
Транксрипт:

Летняя школа по параллельному программированию 2012 Название проекта: Клеточно-автоматное моделирование синхронного режима разделения фаз с помощью MPI Исполнитель проекта: Свичкарев Анатолий, 1 курс ФИТ НГУ Руководитель проекта: Шарифулина Анастасия 13 июля 2012

План доклада: 1.Постановка задачи 2.Идея решения 3.Реализация 4.Визуализация 5.Тестирование 6.Заключение

Постановка задачи j i A={0,1} - алфавит X={(i,j): i,j=0,…,N} u0u0 u1u1 u2u2 u3u3 u4u4 u5u5 u6u6 u7u7 u8u8 u0u0 1, if u k >5 or u k =4 0, if u k

Идея решения Декомпозиция: Разбивка исходного массива с данными на полосы равной длины, которые посылаются отдельному процессу для вычислений. После каждой итерации процессы обмениваются граничными полосами со своими соседями. Была применена модернизированная топология «Звезда»

Реализация Для распараллеливания была использован программный интерфейс MPI. Концентратором является процесс с нулевым рангом, остальные (size-1) процессов занимались обработкой каждый своего розданного блока. В каждой итерации процесс вначале проводил подсчёт своих граничных полос данных, сразу асинхронно неблокированно их отправлял соседям и инициализировал так же приём данных от соседей необходимых для следующей итерации границ данных. В это время процесс проводил подсчёт своего внутреннего блока данных, независимого от соседей. Итерация заканчивалась функциями завершения неблокируемых операций. Через указанное количество итераций результат выводится в файл с расширением.bmp.

Реализация Основные ограничения: 1)Запуск программы возможен минимум на 2 процессах, т.к. один процесс всегда является концентратором и в вычислениях не участвует. 2)Количество строк должно быть кратно количеству процессов без концентратора, иначе не будут обрабатываться последние несколько строк.

Визуализация Начальное состояние КА

Визуализация Состояние КА через 100 итераций

Визуализация Состояние КА через 200 итераций

Визуализация Состояние КА через 300 итераций

Визуализация Состояние КА через 400 итераций

Визуализация Состояние КА через 500 итераций

Визуализация Состояние КА через 1000 итераций

Тестирование Тесты проводились по трём критериям: Среднее время на итерацию ( T(np) ) в миллисекундах (по 10 итераций запускалось) Ускорение где T1 – время работы при запуске на одном процессе( в моём случае на двух Эффективность

np T(np) S(np)1,001,892,803,883,173,00 Q(np)1,000,940,930,960,550,50 Тестирование При размерности матрицы 3000 х 3000 np T(np) S(np)1,002,002,973,964,714,87 Q(np)1,000,970,99 0,940,81 При размерности матрицы 6000 х 6000

Заключение Основных результатов работы: o Изучена модель клеточного автомата на примере разделения фаз; o Освоена работа с моделью параллельных вычислений на MPI; o Создана однопоточная версия с использованием OpenGL; o Создана параллельная версия программы с возможностью сохранения результатов в графическом виде; o Было проведено тестирование на ускорение и эффективность программ на разных количествах процессов.

Заключение Возможных направлений развития проекта : o Создать ввод начального состояния из картинки; o Создать возможность моделирования любых других правил моделей КА; o Создать полноценную топологию на MPI.

Спасибо за внимание!