дз 2. 2-й и 3-й поток (1186081)
Текст из файла
Задание по курсу «Суперкомпьютерноемоделирование и технологии»Октябрь 2016СодержаниеСодержание11 Введение12 Математическая постановка дифференциальной задачи13 Разностная схема решения задачи.24 Метод решения системы линейных алгебраических уравнений.35 Задание практикума.46 Требования к отчету6.1 IBM Blue Gene/P . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .6.2 «Ломоносов» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6777 Литература.81ВведениеТребуется методом конечных разностей приближенно решить задачу Дирихле дляуравнения Пуассона в прямоугольной области. Задание необходимо выполнить на следующих ПВС Московского университета:1. IBM Blue Gene/P,2.
«Ломоносов»2Математическая постановка дифференциальной задачиВ прямоугольной областиΠ = [1 , 2 ] × [1 , 2 ]требуется найти дважды гладкую функцию = (, ), удовлетворяющую дифференциальному уравнению−∆ = (, ),1 < < 2 , 1 < < 21(1)и дополнительному условию(, ) = (, )(2)во всех граничных точках (, ) прямоугольника.
Оператор Лапласа ∆ определен равенством: 2 2∆ =+2 2Функции (, ), (, ) считаются известными и определяются вариантом задания.3Разностная схема решения задачи.В расчетной области Π определяется прямоугольная сетка¯ ℎ = {( , ), = 0, 1, 2, . . . , 1 , = 0, 1, 2, .
. . , 2 },где 1 = 0 < 1 < 2 < . . . < 1 = 2 – разбиение отрезка [1 , 2 ] оси (),1 = 0 < 1 < 2 < . . . < 2 = 2 – разбиение отрезка [1 , 2 ] оси ().Через ℎ обозначим множество внутренних, а через ℎ — множество граничных узлов(1)(2)сетки ¯ ℎ . Пусть ℎ = +1 − , = 0, 1, 2, . . .
, 1 − 1, ℎ = +1 − , = 0, 1, 2, . . . , 2 − 1– переменный шаг сетки по оси абсцисс и ординат соответственно. Средние шаги сеткиопределяются равенствами:(︀ (2)(︀ (1)(2) )︀(1) )︀(2)(1)~ = 0.5 ℎ + ℎ−1 , ~ = 0.5 ℎ + ℎ−1 .Рассмотрим линейное пространство функций, заданных на сетке ℎ . Будем считать,что в пространстве задано скалярное произведение и евклидова норма(︀1 −1 2 −1∑︁)︀ ∑︁(1) (2), =~ ~ ,=1‖‖ =√︀(, ),(3)=1где = ( , ), = ( , ) – любые функции из пространства .Для аппроксимации уравнения Пуасона (1) воспользуемся пятиточечным разностнымоператором Лапласа, который во внутренних узлах сетки определяется равенством:(︃)︃(︃)︃+1 − 11 − −1 − −1 +1 − −+ (2)−.−∆ℎ = (1)(1)(1)(2)(2)~ℎ−1ℎ~ℎ−1ℎЗдесь предполагается, что функция = ( , ) определена во всех узлах сетки ¯ℎ.Приближенным решением задачи (1), (2) называется функция = ( , ), удовлетворяющая уравнениям−∆ℎ = ( , ), ( , ) ∈ ℎ ,(4) = ( , ), ( , ) ∈ ℎ .Эти соотношения представляют собой систему линейных алгебраических уравнений с числом уравнений равным числу неизвестных и определяют единственным образом неизвестные значения .
Совокупность уравнений (4) называется разностной схемой для задачи (1), (2).24Метод решения системы линейных алгебраическихуравнений.Приближенное решение системы уравнений (4) может быть получено итерационнымметодом скорейшего спуска. В этом методе начальное приближение(0)( , ) ∈ ℎ , = ( , ),(0)во внутренних узлах сетки – любые числа.
Метод является одношаговым. Итерация(+1) вычисляется по итерации () согласно равенствам:(+1) ()()= − +1 ,где невязка()() = −∆ℎ − ( , ),() = 0,( , ) ∈ ℎ ,( , ) ∈ ℎ .(5)Итерационный параметр+1(︀ () () )︀ ,)︀ .= (︀− ∆ℎ () , ()Известно, что с увеличением номера итерации последовательность сеточных функций() сходится к точному решению задачи (4) по норме пространства , то есть‖ − ‖ → +∞, → +∞.Cущественно большей скоростью сходимости обладает метод сопряженных градиентов.Начальное приближение (0) и первая итерация (1) вычисляются так же, как и в методескорейшего спуска. Последующие итерации осуществляются по формулам:(+1) ()()= − +1 , = 1, 2, . .
.Здесь(︀+1)︀() , ())︀ ,= (︀− ∆ℎ () , ()вектор()()(0)(0)(−1) = − , = 1, 2, . . . , = ,коэффициент(︀)︀− ∆ℎ () , (−1))︀ . = (︀− ∆ℎ (−1) , (−1)Вектор невязки () вычисляется согласно равенствам (5). Итерационный процесс останавливается, как только‖() − (−1) ‖ < ,(6)где – заранее выбранное положительное число. Заметим, что в последнем неравенствевместо евклидовой сеточной нормы можно использовать любую другую норму пространства , например, максимум-норму:⃒⃒‖‖ = max ⃒( , )⃒.(7)0<<10<<235Задание практикума.Предлагается следующий набор правых частей и граничных условий для дифференциальной задачи (1), (2):1. Правая часть и граничное условие (, ) =2 + 2,(1 + )2(, ) = ln(1 + ),соответственно, прямоугольник Π = [0, 3] × [0, 3].2.
Правая часть и граничное условие (, ) = (2 + 2 ) sin(),(, ) = 1 + sin(),соответственно, прямоугольник Π = [0, 2] × [0, 2].3. Правая часть и граничное условие (, ) = (2 + 2 ) sin(),(, ) = 1 + sin(),соответственно, прямоугольник Π = [−2, 2] × [−2, 2].4. Правая часть и граничное условие (, ) = 4(1 − 2( + )2 ) exp(1 − ( + )2 ),(, ) = exp(1 − ( + )2 ),соответственно, прямоугольник Π = [0, 2] × [0, 2].5. Правая часть и граничное условие (, ) = 4(1 − 2( + )2 ) exp(1 − ( + )2 ),(, ) = exp(1 − ( + )2 ),соответственно, прямоугольник Π = [−2, 2] × [−2, 2].6. Правая часть и граничное условие (, ) = 4(2 − 32 − 3 2 ),(, ) = (1 − 2 )2 + (1 − 2 )2 ,соответственно, прямоугольник Π = [0, 1] × [0, 1].7.
Правая часть и граничное условие (, ) = 4(2 − 32 − 3 2 ),(, ) = (1 − 2 )2 + (1 − 2 )2 ,соответственно, прямоугольник Π = [−1, 1] × [−1, 1].8. Правая часть и граничное условие (, ) = 2(2 + 2 )(1 − 22 2 ) exp(1 − 2 2 ),(, ) = exp(1 − 2 2 ),соответственно, прямоугольник Π = [0, 2] × [0, 2].9.
Правая часть и граничное условие (, ) = 2(2 + 2 )(1 − 22 2 ) exp(1 − 2 2 ),соответственно, прямоугольник Π = [−2, 2] × [−2, 2].4(, ) = exp(1 − 2 2 ),10. Правая часть и граничное условие (, ) =2 + 2,4(4 + )3/2(, ) =√︀4 + ,соответственно, прямоугольник Π = [0, 4] × [0, 4].11. Правая часть и граничное условие (, ) =8(1 − 2 − 2 ),(1 + 2 + 2 )3(, ) =2,1 + 2 + 2соответственно, прямоугольник Π = [0, 2] × [0, 2].12. Правая часть и граничное условие (, ) =8(1 − 2 − 2 ),(1 + 2 + 2 )3(, ) =2,1 + 2 + 2соответственно, прямоугольник Π = [−2, 2] × [−2, 2].Для аппроксимации дифференциальной задачи предлагается использовать равномерную прямоугольную сетку: = 2 (/1 ) + 1 (1 − /1 ), = 0, 1, 2, .
. . , 1 , = 2 (/2 ) + 1 (1 − /2 ), = 0, 1, 2, . . . , 2 ,(8)либо неравномерную сетку, определенную равенствами: = 2 (/1 ) + 1 (1 − (/1 )), = 0, 1, 2, . . . , 1 , = 2 (/2 ) + 1 (1 − (/2 )), = 0, 1, 2, . . . , 2 .(9)Здесь(1 + ) − 1, 0 6 6 1,2 − 1где > 0 – фиксированное число. Конкретный вид сетки определяется вариантом задания.Приближенное решение разностной схемы (4) следует вычислять методом сопряженных градиентов.
Для остановки итерационного процесса предлагается использовать условие (6), положив = 10−4 . Векторная норма может быть определена равенствами (3) либосоотношением (7) в зависимости от варианта задания.Для каждого из перечисленных выше наборов функций (, ), (, ) требуется– подобрать точное решение задачи Дирихле,– методом сопряженных градиентов построить приближенное решение на сетке с числомузлов 1 = 2 = 1000, определить погрешность решения () = = ‖( , ) − ‖,– методом сопряженных градиентов построить приближенное решение на сетке с числомузлов 1 = 2 = 2000 и вновь определить погрешность решения.Расчеты необходимо проводить на многопроцессорных вычислительных комплексахIBM Blue Gene/P и «Ломоносов», используя различное количество узлов сетки, указанное в требованиях к отчету.
Для каждого расчета определить его продолжительностьи ускорение по сравнению с аналогичным расчетом на одном вычислительном узле. Прираспараллеливании программы необходимо использовать двумерное разбиение области наподобласти прямоугольной формы, в каждой из которых отношение количества узловпо ширине и длине должно удовлетворять неравенствам 0.5 6 6 2.5Вариант12345678910111213141516171819202122232425262728293031323334353637386Таблица 1: Варианты заданий (, ), (, )Сетканабор 1равномернаянабор 1равномернаянабор 1неравномерная ( = 3/2)набор 1неравномерная ( = 3/2)набор 2равномернаянабор 2равномернаянабор 2неравномерная ( = 2/3)набор 2неравномерная ( = 2/3)набор 3равномернаянабор 3равномернаянабор 4равномернаянабор 4равномернаянабор 4неравномерная ( = 3/2)набор 4неравномерная ( = 3/2)набор 5равномернаянабор 5равномернаянабор 6равномернаянабор 6равномернаянабор 6неравномерная ( = 3/2)набор 6неравномерная ( = 3/2)набор 7равномернаянабор 7равномернаянабор 8равномернаянабор 8равномернаянабор 8неравномерная ( = 3/2)набор 8неравномерная ( = 3/2)набор 9равномернаянабор 9равномернаянабор 10равномернаянабор 10равномернаянабор 10неравномерная ( = 3/2)набор 10неравномерная ( = 3/2)набор 11равномернаянабор 11равномернаянабор 11неравномерная ( = 3/2)набор 11неравномерная ( = 3/2)набор 12равномернаянабор 12равномернаяНормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаевклидовамаксимум-нормаТребования к отчетуДля того, чтобы успешно сдать задание, необходимо∙ уверенно ориентироваться в программном коде;∙ понимать семантику всех используемых в коде функций MPI и директив OpenMP;∙ предоставить отчет с результатами исследования параллельных характеристик программы;6∙ предоставить программный код.Исследование параллельных характеристик MPI-программы необходимо провести навсех ПВС.
На ПВС Blue Gene/P также необходимо провести исследование параллельныххарактеристик гибридной программы MPI/OpenMP и сравнить полученные результаты спрограммой, не используещей директивы OpenMP.Отчет о выполнении задания должен содержать∙ математическую постановку задачи;∙ численные метод ее решения;∙ краткое описание проделанной работы по созданию гибридной реализации MPI/OpenMP;∙ результаты расчетов для разных размеров задач и на разном числе процессоров(заносятся в таблицу – см. ниже).∙ рисунок точного решения, а также приближенного решения, построенного на сетке2000 × 2000 узлов.6.1IBM Blue Gene/PРасчеты должны быть проведены для следующего числа процессоров: 128, 256 и 512.Количество узлов: 1000×1000 и 2000×2000 по осям абсцисс и ординат соответственно.
MPIверсию следует запускать в режиме SMP, гибридную версию MPI/OpenMP — в режимеSMP, но использовать при этом не четыре, а только три процессорных ядра.Таблица 2: Таблица с результатами расчетов на ПВС IBM Blue Gene/PЧисло процессоров Число точек сетки 3 Время решения Ускорение 1281000 × 10002561000 × 10005121000 × 10001282000 × 20002562000 × 20005122000 × 2000Заполняется два экземпляра таблицы: один – для MPI программы, другой – для гибридной MPI/OpenMP программы.6.2«Ломоносов»Расчеты должны быть проведены для следующего числа процессоров: 8, 16, 32, 64 и128 на сетках с числом узлов 1000 × 1000 и 2000 × 2000.Таблица 3: Таблица с результатами расчетов на ПВС «Ломоносов»Число процессоров Число точек сетки 3 Время решения Ускорение 81000 × 1000161000 × 1000321000 × 10001281000 × 100082000 × 2000162000 × 2000322000 × 20001282000 × 200077Литература.1.
А.Н. Тихонов, А.А. Самарский. Уравнения математической физики. М. Изд. "Наука". 1977.2. А.Н. Самарский, А.В. Гулин. Численные методы математической физики. М. Изд."Научный мир". 2003.3. Г.И. Марчук. Методы вычислительной математики. М. Изд. "Наука". 1989.4. IBM BlueGene/P — http://hpc.cmc.msu.ru5. Суперкомпьютер "Ломоносов— http://parallel.ru/cluster/superinfo8.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.















