РЕШЕНИЕ ПРАКТИЧЕСКИХ ЗАДАЧ С ПРИМЕНЕНИЕМ ТЕХНОЛОГИИ MPI Лабораторная работа №4 по дисциплине «Параллельные и распределенные вычисления для многопроцессорных вычислительных систем»

Скачать демо-версию работы
  • Тема работы:

    РЕШЕНИЕ ПРАКТИЧЕСКИХ ЗАДАЧ С ПРИМЕНЕНИЕМ ТЕХНОЛОГИИ MPI Лабораторная работа №4 по дисциплине «Параллельные и распределенные вычисления для многопроцессорных вычислительных систем»

  • Номер работы:

    1461116

  • Раздел:

    Практические задания   →   Информационное обеспечение, программирование

  • Год сдачи:

    21.01.2025

  • Количество страниц:

    17 стр.

  • Содержание:

    ЦЕЛЬ

    Получить практический навык использования технологии MPI при решении задач прикладного характера.

    ЗАДАНИЕ

    Разработать прикладную программу (с использованием технологии MPI), решающую задачу из приведенного списка практических задач. Номер решаемой задачи выбрать соответственно своему варианту.
    Содержание отчета:
    1. Название и цель работы.
    2. Задание к выполнению лабораторной работы согласно варианту.
    3. Краткие теоретические сведения по решаемой задаче.
    4. Описание алгоритма решения задачи в виде блок-схем или словесное описание используемых параллельных методов вычислений.
    5. Программа в виде исходных кодов (с поясняющими комментариями), а также в откомпилированном виде для демонстрации на ЭВМ.
    6. Примеры работы программы на тестовых данных.
    7. Выводы по работе.

    Вариант № 1

    Численно найти значение определенного интеграла данной функции с точностью до 10 знаков после запятой методом Симпсона.

  • Выдержка из работы:

    ВЫПОЛНЕНИЕ

    Теоретические сведения
    Пусть требуется найти значение интеграла I=?_a^b-f(x)dx.
    Основная идея большей части методов численного интегрирования заключается в замене подынтегральной функции на более простую, интеграл от которой может быть легко вычислен аналитическим способом. При этом для оценки значения интеграла получаются формулы вида:
    ?_a^b-f(x)dx??_(i=1)^n-?w_i•f(x_i ) ?
    В данном случае, n – количество точек, в которых вычисляется значение подынтегральной функции. Точки называются узлами метода, а числа w_i – весами узлов.
    Одним из методов численного интегрирования является метод Симпсона, в котором подынтегральная функция на отрезке интегрирования заменяется параболой. Обычно в качестве узлов отрезка используют концы отрезка и его среднюю точку. В этом случае формула имеет очень простой вид:
    ?_a^b-f(x)dx?(b-a)/6•(f(a)+4•f((a+b)/2)+f(b))
    Если разбить интервал интегрирования на 2•N равных частей, то получается:
    ?_a^b-f(x)dx?(b-a)/(6•N)•(-(f_0+4•(f_1+f_3+?+f_(2•N-1) )+@+2•(f_2+f_4+?+f_(2•N-2) )+f_(2•N) ))

    Описание архитектуры программы
    В контексте логики работы программы ее описание (словесный алгоритм функционирования) выглядит следующим образом:
    Пользователь осуществляет запуск программы с указанием в командной строке количество процессов, режим работы программы, интервал интегрирования [a;b] и количество подинтервалов N.
    Программа может функционировать в двух режимах:
    «normal» – нормальный режим, в котором осуществляется вычисление интеграла на больших входных данных;
    ……………………….

    Блок-схема параллельного алгоритма

    Полностью программный код разработанной программы приведен в Приложении. На рисунок 1 показана блок-схема работы функции main(), в которой происходит инициализация входных переменных, передача параллельным процессам выделенных им интервалов интегрирования и вызов функции расчета интеграла.

    ……………………….


    Расчет ускорения

    Для расчета ускорения используется следующее соотношение:
    S_p (n)=(T_1 (n))/(T_p (n) )
    где T_1 (n) соответствует времени выполнения последовательной программы, T_p (n) является временем выполнения параллельной версии программы для p процессов. Ниже приведена таблица (таблица 2) и диаграмма (рисунок 8) для расчета ускорения. ……………………….

Не подошла работа?

Закажите написание эксклюзивной работы по Вашим требованиям