В 3 самостоятельной работе, нами уже было написано приложение, рассчитывающее динамические характеристики для распределенного приложения, соответствующего заданной модели.
Поэтому, в данной самостоятельной работе нам необходимо модифицировать уже созданное приложение, таким образом, чтобы оно поддерживало параллельную обработку данных, используя библиотеку MPI.
Так как в 3 самостоятельной работе мы уже проводили проверку результатов с помощью математического пакета MatCad и подтвердили их корректность, то в этой работе мы, мы будет опираться на уже имеющиеся результаты вычислений.
Так как мы хотим добиться параллельной обработки данных, то очевидно, что в результате работы, должно уменьшиться время вычислений, а результат работы приложения измениться не должен.
Работу я начну с того, что измерю время выполнения программы для рассчета динамических характеристик, разработанного нами в 3 самостоятельной работе, после чего получу результаты для последующей проверки нового продукта, исспользующего MPI для проведения сравнения.
Данная программа уже написана, нам остается только запустить ее.
Результаты работы программы без MPI представлены на рис.2:
Рис.2 Результаты работы программы без MPI
Как мы видим, программа без MPI выполнялась 1 секунду 422 милисекунды. Посмотрим, какие результаты нам даст применение MPI.
Теперь, модифицируем нашу программу и добавим ей возможность параллельной обработки данных при помощи библиотеки MPI.
Сначала стоит определиться, какие из процессов независимы и могут быть выполнены ассинхронно, а какие зависят от результатов других процессов и должны быть выполненны синхронно.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.