Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Задание 1. Практический курс MPI. Текущие задания.
Практический курс MPI. Текущие задания. По всем заданиям нужно представить программный код и результаты. Результаты представить в виде графиков, желательно построенных в gnuplot, необходимых оценок, формул и кратких выводов. Параметры для задач подбираете для наиболее наглядного результата. Задание №1 1) Определение latency для двух процессоров на одном узле и на разных узлах. 2) Определение зависимости пропускной способности от размера сообщения. Определение максимальной пропускной способности. Задание №2 Программа для расчёта числа ПИ Все результаты представить в виде графиков, желательно построенных в gnuplot, и кратких выводов. Параметры подбираете для наиболее наглядного результата. 1) Зависимость времени вычисления от числа процессоров и зависимость ошибки от числа разбиений. Сделать два варианта разбиения отрезка интегрирования: как в примере и самое простое разбиение по 1/n части отрезка на каждый из n выделенных процессоров. 2) Для этих вариантов разбиений построить распределение времён расчёта на каждом процессоре для расчёта числа пи 3) Для этих вариантов разбиений построить распределение времён расчёта на каждом процессоре для расчёта числа x^2 и e^x на отрезках [0; 10^N], где N> 3 выбираете самостоятельно Задание №3 1) Рассчитать ускорение и эффективность для задачи с расчётом числа пи. Сравнить с теоретическими формулами с помощью аппроксимации в gnuplot. 2) Провести сравнительный анализ функций (выбор адекватного способа сравнения за Вами) a. Sendrecv и ISend, IRecv b. Коллективной операции и операции «точка-точка» 3) Провести распараллеливание программы поиска максимального элемента матрицы. Расписать все этапы распараллеливания. Оценить ускорение и эффективность распараллеливания, сравнить эти оценки с полученными при запуске задачи на кластере. Итоговое задание Нужно выполнить два задания из перечисленных ниже. Одно задание определяете как 1+ (остаток от деления Вашего номера в списке на 4). Второе задание выбираете самостоятельно. По каждому заданию дополнительно к стандартному отчёту добавляете сравнительный анализ ваших оценок формул для ускорения и эффективности с ускорением и эффективностью Вашей реализации. На графике нужно представить точки по Вашей программе и аппроксимацию по теоретическим формулам. Задание 1. Имеется вычислительная система, состоящая из 1. Составить программу решения систем линейных алгебраических уравнений с квадратной невырожденной матрицей порядка 2. Провести испытание программы на системе
Решение 3. Найти эксперементально зависимость времени
где 4. Добиться того, чтобы при заданном Задание 2. Перемножение квадратных матриц порядка Тест: любой Задание 3. Обращение матриц методом Жордана Тест: матрица матрица
Задание 4. Написать параллельную программу поиска всех решений задачи размещения N ферзей на шахматной доске K*K. Решением считается такое размещение, при котором ферзи не бьют друг друга. Входные параметры программы: · P - число параллельных процессов; · N - количество ферзей; · K - размер доски. Замечание. Хорошая параллельная программа подразумевает, что, по возможности, выполняются следующие условия: 1. Работа в параллельных процессах не дублируется. 2. Вычислительная нагрузка на каждый процесс примерно одинакова. 3. При увеличении числа процессоров в n раз (и соответствующем увеличении числа процессов), время решении задачи уменьшается, в идеальном случае, в n раз.
|