Programming Taskbook


E-mail:

Пароль:

Регистрация пользователя   Восстановление пароля

English

ЮФУ

Электронный задачник по программированию

©  М. Э. Абрамян (Южный федеральный университет), 1998–2018

 

PT for MPI-2 | Общее описание

Next


Свидетельство о государственной регистрации задачника Programming Taskbook for MPI-2

Скачать дистрибутив электронного задачника Programming Taskbook for MPI-2 (версия 1.1 с поддержкой русского и английского интерфейса)

Скачать дистрибутив системы MPICH2 1.3 for Windows

Скачать дистрибутив системы MPICH 1.2.5 for Windows

Общее описание

Программный комплекс «Электронный задачник по параллельному программированию на базе MPI-2 Programming Taskbook for MPI-2» (PT for MPI-2) является дополнением электронного задачника Programming Taskbook, позволяющим выполнять задания на разработку параллельных программ с применением технологии MPI стандарта 1.x и 2.x.

Электронный задачник Programming Taskbook for MPI-2 разработан при поддержке Стипендиальной программы Благотворительного фонда В. Потанина в рамках выполнения проекта «Электронный задачник по параллельному MPI-программированию» — одного из проектов-победителей грантового конкурса для преподавателей магистратуры 2016–2017 года в номинации «Новые методы и специальные навыки в обучении».

Начиная с версии 1.1, задачник PT for MPI-2 позволяет использовать два варианта языкового интерфейса: русский и английский.

Для возможности использования задачника PT for MPI-2 его следует установить в системный каталог базового варианта электронного задачника Programming Taskbook версии не ниже 4.17 (обычно системным каталогом задачника является каталог C:\Program Files\PT4 или C:\Program Files (x86)\PT4). На компьютере надо также установить систему MPICH для Windows, которая обеспечивает запуск программ в параллельном режиме. Задачник может использоваться совместно со следующими версиями системы MPICH:

Если на компьютере установлены обе эти версии, то с помощью модулей PT4Setup и PT4Load можно выбирать любой из данных вариантов MPICH для использования с учебными программами.

Диплом победителя Грантового конкурса для преподавателей магистратуры Стипендиальной программы Владимира Потанина 2016-2017 года

Примечание. Для корректной установки системы MPICH2 необходимо запустить установочный файл mpich2-1.3-win-ia32.msi с правами администратора. Если соответствующий пункт контекстного меню для данного файла отсутствует, то можно, например, запустить командную строку с правами администратора («Пуск | Все программы | Стандартные | Командная строка», использовать команду «Запуск от имени администратора» из контекстного меню данной программы), а в ней осуществить запуск установочного файла mpich2-1.3-win-ia32.msi. При наличии на компьютере файлового менеджера FAR удобнее запустить с правами администратора программу FAR и в ней выполнить запуск установочного файла.

Комплекс PT for MPI-2 является свободно распространяемым программным продуктом (freeware); он может использоваться как с полным вариантом задачника PT4Complete–1100, так и со свободно распространяемым мини-вариантом PT4Mini–270.

Задания, включенные в задачник PT for MPI-2, могут выполняться на языке С++ во всех программных средах для этого языка, поддерживаемых задачником Programming Taskbook версии 4.17:

  • Microsoft Visual Studio 2008, 2010, 2012, 2013, 2015, 2017;
  • Code::Blocks версии 13 или выше.

К учебным программам должна подключаться динамическая библиотека, входящая в состав комплекса MPICH. Доступ к библиотеке обеспечивается с помощью lib-файла и набора заголовочных файлов (также входящих в комплекс MPICH). Все действия по копированию в рабочий каталог дополнительных файлов и их подключению к учебному проекту задачник выполняет автоматически.

Задачник PT for MPI-2 предоставляет при выполнении заданий те же возможности, что и базовый задачник Programming Taskbook; в частности, он передает программе учащегося исходные данные, проверяет правильность результатов, полученных программой, выполняя серию тестовых запусков учебной программы, и сохраняет сведения о каждом тестовом испытании программы в специальном файле. Кроме того, в задачнике PT for MPI-2 предусмотрены дополнительные возможности, связанные со спецификой выполнения заданий по параллельному программированию:

  • демонстрационный просмотр заданий, не требующий использования параллельного режима;
  • создание для выбранного задания проекта-заготовки с подключенными к нему модулями библиотеки MPI;
  • особый механизм, обеспечивающий выполнение программы учащегося в параллельном режиме при ее обычном запуске из среды разработки: запущенная программа выполняет запуск приложения MPIRun.exe из комплекса MPICH, которое, в свою очередь, запускает программу в параллельном режиме (все процессы выполняются на локальном компьютере);
  • передача каждому процессу параллельной программы его собственного набора исходных данных;
  • получение от каждого процесса требуемых результатов и их автоматическая пересылка в главный процесс для проверки и отображения в окне задачника;
  • вывод информации об ошибках времени выполнения (в том числе ошибках, возникших при выполнении функций MPI) и ошибках ввода-вывода с указанием рангов процессов, в которых эти ошибки произошли;
  • возможность вывода отладочной информации для каждого процесса в специальном разделе окна задачника;
  • автоматическая выгрузка из памяти всех запущенных процессов даже в случае зависания параллельной программы.

Перечисленные выше возможности избавляют учащегося от необходимости выполнения дополнительных действий, связанных с запуском его программы в параллельном режиме, и упрощают выявление и исправление стандартных ошибок, возникающих в параллельных программах.

Использование исходных данных, подготовленных задачником для каждого процесса параллельной программы, наглядный вывод в одном окне всех результатов, полученных каждым процессом, и их автоматическая проверка, а также дополнительные средства отладки позволяют учащемуся сосредоточиться на реализации алгоритма решения задачи и обеспечивают надежное тестирование разработанного алгоритма.

Задачник является расширенной версией задачника Programming Taskbook for MPI (PT for MPI), ориентированного на стандарт MPI-1, первая версия которого была разработана в 2009 г. Помимо 100 учебных заданий, перенесенных в него из задачника PT for MPI, он включает 150 новых заданий. Часть новых заданий дополняет прежние темы, часть связана с новыми возможностями стандарта MPI-2. Наряду с группами, посвященными конкретным разделам библиотеки MPI, задачник включает группу заданий на разработку параллельных алгоритмов (а именно, ленточных и блочных алгоритмов умножения матриц), в которых используются различные средства MPI, изученные в предыдущих группах.

В отличие от задачника PT for MPI, в состав которого входит одна большая группа MPIBegin, состоящая из 100 заданий по разным разделам MPI, задачник PT for MPI-2 включает 9 групп заданий. Первые 5 из них содержат все задания из группы MPIBegin и ряд новых заданий (всего 124 задания); заключительные 4 группы являются новыми и включают 126 заданий. Ниже перечислены группы заданий и входящие в них подгруппы (в скобках указывается количество заданий):

Ряд заданий, взятых из группы MPIBegin, снабжен новыми указаниями.

Задачники PT for MPI и PT for MPI-2 могут использоваться совместно, причем в случае установки задачника PT for MPI-2 задания, входящие в задачник PT for MPI, могут выполняться на языке C++ с применением как системы MPICH 1.2.5, так и системы MPICH2 1.3 (задания на языке Pascal, который поддерживается в задачнике PT for MPI, могут выполняться только с применением системы MPICH 1.2.5). Задачник PT for MPI-2 язык Pascal не поддерживает.

При разработке новых (и модификации имеющихся) заданий широко использовались новые возможности электронного задачника Programming Taskbook последних версий, в частности, наличие варианта окна задачника с динамической компоновкой, позволяющей отображать на экране большие формулировки заданий и большие наборы исходных и результирующих данных, возможность добавления к формулировке задания иллюстраций (использована в заключительных заданиях группы MPI5Comm, посвященных топологиям графа), возможность создания специальных программ-заготовок для отдельных заданий (использована в группе MPI9Matr, посвященной параллельным матричным алгоритмам).

Как и в последних версиях задачника PT for MPI, при однократном запуске программ, выполняющих задания из задачника PT for MPI-2, выполняется их проверка на нескольких наборах тестовых данных; таким образом, для полного тестирования решения достаточно выполнить один запуск программы из интегрированной среды.

В заданиях, связанных с файловым вводом-выводом (группа MPI6File и часть заданий группы MPI9Matr) использованы средства электронного задачника, позволяющие включать в задание двоичные файлы в качестве «внешних» исходных и результирующих данных (и обеспечивающие наглядный вывод их содержимого в окне задачника).

При разработке комплекса PT for MPI-2 были расширены возможности раздела отладки окна задачника, связанные с отображением отладочной информации из различных процессов: добавлена возможность отображения данных, полученных от тех процессов, которые были созданы в ходе работы параллельной программы. Данная возможность использована в заданиях группы MPI8Inter, посвященных динамическому созданию процессов.

В контекстное меню окна задачника были включены дополнительные команды, позволяющие настраивать следующие параметры параллельного приложения:

  • время ожидания отклика от подчиненных процессов на завершающем этапе выполнения программы (при получении от них информации о введенных и выведенных данных),
  • установка или отмена режима паузы при завершении выполнения bat-файла, обеспечивающего запуск программы в параллельном режиме.

Первая настройка позволяет увеличить время ожидания отклика для компьютеров с низким быстродействием, вторая настройка (режим паузы) позволяет просмотреть сообщения об ошибках, выводимые системой MPICH в консольном окне (при отключенном режиме паузы в случае возникновения ошибок на уровне системы MPICH консольное окно немедленно закрывается).

Реализованные в задачнике PT for MPI-2 средства автоматического запуска и отладки параллельных приложений позволяют использовать его для разработки и тестирования параллельных программ, не связанных с конкретными учебными заданиями. С этой целью в задачник PT for MPI-2 (как и ранее в задачник PT for MPI) включена вспомогательная группа MPIDebug из 36 «заданий», каждое из которых обеспечивает автоматический запуск параллельной программы, причем количество процессов определяется порядковым номером задания (пример использования заданий из этой группы приведен в разделе «Отладка параллельных программ»). Таким образом, эти «задания» позволяют запускать любые параллельные программы с требуемым количеством процессов непосредственно из интегрированной среды и предоставляют для их отладки средства, имеющиеся в задачнике.

Предусмотренные в задачнике возможности, связанные с отладочной печатью, можно использовать и при разработке консольных параллельных программ, не требующих подключения задачника. Для этого предназначены компоненты pt4console.h и pt4console.cpp, размещенные в подкаталоге PTforMPI2\stubs системного каталога задачника Programming Taskbook (по умолчанию c:\Program Files(x86)\PT4). Примеры их использования приведены в разделе «Запуск параллельных программ без задачника»

С помощью конструктора учебных заданий PT4TaskMaker преподаватель может разрабатывать дополнительные группы заданий, связанные с параллельным MPI-программированием (см. разделы «Дополнительные возможности конструктора заданий» и «Примеры»). Вариант конструктора учебных заданий для языка C++ включен с дистрибутив задачника PT for MPI-2; его компоненты pt4taskmaker.h и pt4taskmaker.cpp содержатся в подкаталоге PTforMPI2\taskmaker системного каталога задачника Programming Taskbook.

В состав задачника PT for MPI-2 входит гипертекстовая справочная система PTforMPI2.chm, содержащая ту же информацию, что и раздел сайта ptaskbook.com, посвященный задачнику PT for MPI-2.

Программный комплекс «Электронный задачник по параллельному программированию на базе MPI-2 Programming Taskbook for MPI-2» зарегистрирован в Реестре программ для ЭВМ 2 февраля 2018 г. (свидетельство о государственной регистрации программы для ЭВМ номер 2018611548).


Next

 

Рейтинг@Mail.ru

Разработка сайта:
М. Э. Абрамян, В. Н. Брагилевский

Последнее обновление:
06.05.2018