Microsoft MPI
Microsoft MPI (MS-MPI) — это реализация майкрософт стандарта интерфейса передачи сообщений для разработки и запуска параллельных приложений на платформе Windows.
MS-MPI предлагает несколько преимуществ:
- Простота переноса существующего кода, использующего MPICH.
- Безопасность на основе доменные службы Active Directory.
- Высокая производительность в операционной системе Windows.
- Совместимость двоичных файлов между различными типами параметров взаимодействия.
Исходный код MS-MPI
Исходный код Microsoft MPI доступен на сайте GitHub.
Загрузки MS-MPI
Ниже приведены текущие скачиваемые файлы для MS-MPI:
- MS-MPI версии 10.1.3 (новая версия!) — см. заметки о выпуске
- Отладчик для приложений MS-MPI с пакетом HPC 2012 R2
Более ранние версии MS-MPI доступны в Центре загрузки Майкрософт.
Ресурсы сообщества
- Форум MPI для Windows HPC
- Обратитесь к команде MS-MPI
Высокопроизводительные вычислительные ресурсы Майкрософт
- Рекомендуемое руководство. Компиляция и запуск простой программы MS-MPI
- Рекомендуемое руководство. Настройка кластера Windows RDMA с пакетом HPC и экземплярами A8 и A9 для запуска приложений MPI
- Высокопроизводительные вычисления Microsoft для разработчиков
- Обзор пакета Microsoft HPC 2019
- Сценарии Azure HPC
Установка библиотеки MPICH2 под Windows
Для того чтобы начать работу с библиотекой MPICH2, необходимо скачать совместимую с используемой операционной системой версию продукта здесь. Для ОС Windows – это установочный пакет формата MSI, поэтому инсталляция библиотеки проходит стандартным образом. Важно, что установку в этом случае надо проводить для всех пользователей системы.
Теперь необходимо добавить два основных исполняемых файла библиотеки mpiexec.exe и smpd.exe в список правил брандмауэра. Это необходимо, поскольку, при организации кластера используется сеть и доступ к каждому узлу сети должен быть разрешен для компонентов MPI. Конкретные настройки зависят от типа используемого брандмауэра.
На следующем этапе необходимо создать пользователя в системе, от имени которого будут исполняться компоненты библиотеки. Важно, что данный пользователь обязательно должен иметь свой пароль, т.к. MPICH2 не позволяет зарегистрировать исполняющего пользователя с пустым паролем. Регистрация осуществляется с помощью компонента wmpiregister.exe, находящегося в папке bin библиотеки и имеющего понятный оконный интерфейс:
Однако, это возможно сделать, используя консольную команду [путь_к_библиотеке]/bin/mpiexec -register.
Установка практически завершена. Осталось проверить правильность всех сделанных настроек. Для этой цели в папке examples есть примеры программ с параллельными алгоритмами. Для запуска можно использовать компонент wmpiexec.exe, который использует оконный интерфейс, который не нуждается в дополнительных комментариях.

Другой путь для исполнения приложений с использованием MPI – через консоль, например, написав подобную команду [путь_к_библиотеке]/bin/mpiexec -n 2 cpi.exe, где -n 2 указывает количество задействованных процессов (здесь их 2), а cpi.exe – это имя исполняемого приложения. Для простоты работы через консоль советую добавить в переменную окружения PATH путь к mpiexec.exe. Если выполнение приложения производится на однопроцессорной машине, то происходит эмуляция многопроцессорности, т.е. проверять работоспособность своих приложений можно «не отходя от кассы».
Проверка работоспособности
В качестве IDE для разработки используется MVS 2005. Напишем программу, которая будет привествовать этот мир от имени разных новорожденных процессов процессов. Для этого используется пустой проект (empty project) с изменением некоторых настроек проекта.
- Выбираем пункт меню Tools => Options.
- В дропдауне “Show directories for:” выбираем пункт “Include files”.
- Добавляем [путь_к_библиотеке]\Include
- В дропдауне “Show directories for:” выбираем пункт “Library files”.
- Добавляем [путь_к_библиотеке]\Lib
- В Solution Explorer кликаем правой кнопкой мыши на проекте и выбираем add => existing item. Выбираем все файлы с расширением .lib в папке [путь_к_библиотеке]\Lib
#include «stdio.h»
#include «mpi.h»
#include «stdlib.h»
#include «math.h»
int ProcNum;
int ProcRank;
int main( int argc, char *argv[]) MPI_Status status;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &ProcRank);
MPI_Comm_size(MPI_COMM_WORLD, &ProcNum);
printf( «From process %i: Hello, World!\n» , ProcRank);
* This source code was highlighted with Source Code Highlighter .
Компилируем его и запускаем полученный бинарник через wmpiexec на 4 процессах.

Как видим, мир поприветствовал каждый рождённый процесс.
Я умышленно приводил код без каких либо комментариев, а только с целью демонстрации работы библиотеки. В будущем я планирую посвятить статью списку функций MPI. Также интересной является тема избыточной параллельности и, вообще, вопрос когда стоит распарарллеливать приложение, а когда нет. Эти исследования также будут приведены позже. Поэтому у меня возник основной вопрос — сфера применимости в web технологиях? Пока мой интерес к параллельным вычислениям вызван другой проблемой: ускорение моделирования разного рода процессов.
- c
- параллельное программирование
- mpi
Как установить MPI

MPI (Message Passing Interface) — это стандартное программное обеспечение, которое позволяет обмениваться информацией и координировать параллельные вычисления между несколькими узлами или компьютерами. Установка MPI на компьютер является необходимым шагом для тех, кто хочет разрабатывать и запускать параллельные программы.
В этой статье мы рассмотрим простые шаги по установке MPI на компьютер. Перед тем, как начать, убедитесь, что ваш компьютер соответствует требованиям к аппаратному и программному обеспечению для MPI. Также убедитесь, что у вас есть необходимые привилегии для установки программного обеспечения.
Первым шагом является загрузка MPI с официального сайта. Вы можете выбрать нужную версию MPI в зависимости от вашей операционной системы. Обычно на сайте предлагаются инструкции по установке для разных операционных систем.
После загрузки файла с MPI, следуйте инструкциям по установке MPI на ваш компьютер. Обычно процесс установки состоит в выполнении нескольких пунктов, таких как распаковка архива, установка библиотек, установка переменных среды и других настроек. Ознакомьтесь с инструкциями внимательно и следуйте им последовательно.
Установка MPI на компьютер
MPI (Message Passing Interface) — это стандартное программное обеспечение, используемое для разработки и выполнения параллельных программ на компьютере. Оно позволяет разделить команды между несколькими процессами, работающими одновременно, и обмениваться сообщениями между ними.
Установка MPI на компьютер имеет несколько шагов:
- Скачайте и установите компиляторы языка C и C++ на ваш компьютер. Например, вы можете использовать GCC для компиляции программ на C и G++ для программ на C++. Если у вас уже есть установленные компиляторы, пропустите этот шаг.
- Скачайте установочный пакет MPI с официального веб-сайта MPICH или Open MPI. Оба пакета являются популярными реализациями стандарта MPI.
- Запустите установочный пакет MPI и следуйте инструкциям мастера установки. Выберите путь установки и настройте параметры по вашему усмотрению.
- После завершения установки добавьте путь к установленным файлам MPI в переменную среды PATH вашей операционной системы. Это позволит вам использовать установленные компоненты MPI из любой директории.
- Проверьте правильность установки MPI, выполнив небольшую тестовую программу. Создайте новый файл с расширением .c или .cpp и вставьте следующий код:
#include
#include
int main(int argc, char** argv)
MPI_Init(&argc, &argv);
printf(«Hello, MPI!
«);
MPI_Finalize();
return 0;
>
Сохраните файл, скомпилируйте его с помощью компилятора MPI и запустите полученный исполняемый файл. Если вы видите сообщение «Hello, MPI!», значит MPI успешно установлен на вашем компьютере.
Список популярных компиляторов MPI
Выберите компилятор MPI, который лучше всего соответствует вашим потребностям, и следуйте инструкциям по его установке. После установки MPI вы будете готовы разрабатывать и выполнять параллельные программы на своем компьютере.
Шаг 1: Подготовка компьютера
Перед установкой MPI на компьютер необходимо выполнить несколько подготовительных шагов:
1. Определение операционной системы
Прежде чем устанавливать MPI, необходимо убедиться, что у вас установлена поддерживаемая операционная система. MPI поддерживает различные операционные системы, такие как Windows, Linux и MacOS.
2. Установка компилятора
Для компиляции программ, использующих MPI, необходимо установить компилятор. Для операционных систем Windows можно использовать Microsoft Visual Studio или MinGW. Для Linux наиболее распространенным компилятором является GNU Compiler Collection (GCC). Для MacOS можно использовать Xcode Command Line Tools.
3. Установка MPI
После того как операционная система и компилятор установлены, можно приступить к установке MPI. Существуют различные реализации MPI, такие как Open MPI и MPICH. Для установки MPI на Windows можно использовать пакеты сборки, такие как MS-MPI или MPICH2. Для Linux и MacOS предлагается использовать пакетного менеджера, такие как apt-get или Homebrew.
При установке MPI на компьютер необходимо следовать инструкциям, предоставленным разработчиками выбранной реализации MPI.
4. Проверка установки
После установки MPI рекомендуется проверить, что установка прошла успешно. Для этого можно выполнить простой тестовый пример, который будет запускаться на нескольких узлах. Если тестовый пример успешно выполняется, это означает, что MPI установлен и функционирует правильно.
| Операционная система | Реализация MPI |
|---|---|
| Windows | MS-MPI, MPICH2 |
| Linux | Open MPI, MPICH2 |
| MacOS | Open MPI, MPICH2 |
После выполнения подготовительных шагов можно приступить к установке и использованию MPI на компьютере.
Шаг 2: Скачивание MPI
Когда вы уже установили необходимые компоненты, вы можете приступить к скачиванию MPI.
Существует несколько вариантов, откуда вы можете скачать MPI:
- Официальный сайт MPI. Посетите сайт MPI (https://www.mpi-forum.org/) и найдите раздел «Downloads». Здесь вы можете найти последнюю версию MPI для скачивания.
- Дистрибутив вашей операционной системы. Некоторые операционные системы, такие как Linux, уже включают MPI в свои дистрибутивы. Проверьте репозиторий вашей операционной системы или воспользуйтесь менеджером пакетов, чтобы установить MPI.
При выборе варианта, убедитесь, что вы скачиваете совместимую с вашей операционной системой версию MPI.
Если вы скачали MPI в виде архива, распакуйте архив в удобную для вас папку.
В этом шаге вы успешно скачали MPI и готовы перейти к установке.
Шаг 3: Установка MPI
В данном разделе мы рассмотрим процесс установки MPI на ваш компьютер. Для начала, убедитесь, что вы завершили Шаг 2: Подготовка к установке.
1. Выбор MPI-реализации
Первым шагом необходимо выбрать MPI-реализацию, которую вы хотите установить. Существует несколько популярных MPI-реализаций, таких как Open MPI, MPICH и Intel MPI. Выбор конкретной реализации зависит от ваших потребностей и требований вашего проекта.
2. Скачивание MPI
После выбора MPI-реализации, вам необходимо скачать соответствующий пакет установки. Для этого обычно вы можете посетить официальный веб-сайт выбранной реализации и найти ссылку на загрузку последней версии.
3. Установка MPI
После завершения загрузки пакета установки, выполните следующие шаги в зависимости от операционной системы:
- Windows:
- Запустите скачанный установщик MPI.
- Следуйте указаниям мастера установки MPI.
- Выберите путь установки и завершите установку.
- Linux:
- Откройте терминал и перейдите в каталог, содержащий загруженный пакет установки.
- Распакуйте пакет установки с помощью команды tar или unzip.
- Перейдите в распакованную папку и выполните инструкции, содержащиеся в файле README или INSTALL.
- Запустите команду make, чтобы скомпилировать исходный код MPI.
- Завершите установку, следуя дополнительным инструкциям, если таковые имеются.
После завершения установки вам будет доступен MPI на вашем компьютере. Теперь вы можете перейти к следующему шагу — Шаг 4: Проверка установки MPI.
Шаг 4: Проверка установки MPI
После того, как вы успешно установили MPI на свой компьютер, вам необходимо выполнить проверку, чтобы убедиться, что установка прошла без ошибок и MPI готов к использованию. Следуйте инструкциям ниже для проверки установки MPI.
- Откройте командную строку или терминал на вашем компьютере.
- Введите команду mpirun —version и нажмите Enter.
- Если у вас установлена версия MPI, в командной строке или терминале будет выведена информация о версии MPI и его компонентах. Это означает, что установка прошла успешно.
- Если вместо информации о версии MPI вы увидите сообщение об ошибке, это означает, что установка не прошла успешно. В таком случае, рекомендуется повторить установку и убедиться, что все шаги выполняются корректно.
После успешной проверки установки MPI, вы готовы начать использовать его для разработки параллельных программ и выполнения расчетов на кластерах. Удачи в вашем путешествии в мир параллельного программирования!
Вопрос-ответ
Как установить MPI на компьютер?
Для установки MPI на компьютер нужно скачать и установить дистрибутив MPI, затем выполнить несколько простых шагов, описанных в статье. Подробные инструкции можно найти в статье «Как установить MPI на компьютер — простые шаги для начинающих».
Какой дистрибутив MPI лучше использовать?
Существует несколько популярных дистрибутивов MPI, таких как Open MPI, MPICH и Intel MPI. Каждый из них имеет свои особенности и подходит для разных целей. Рекомендуется выбирать дистрибутив, который подходит для вашей операционной системы и языка программирования, которым вы пользуетесь.
Как проверить, правильно ли установлен MPI на компьютере?
После установки MPI на компьютер, вы можете проверить его работоспособность, выполнив небольшую тестовую программу. В статье описаны простые шаги по созданию и запуску тестовой программы для проверки установки MPI.
Можно ли использовать MPI на Windows?
Да, можно использовать MPI на операционной системе Windows. Существуют дистрибутивы MPI, которые поддерживают Windows, например, Open MPI. В статье описаны шаги установки MPI на Windows и запуска тестовой программы.
Какой язык программирования лучше использовать с MPI?
MPI поддерживает множество языков программирования, включая C, C++, Fortran и Python. Выбор языка программирования зависит от ваших предпочтений и требований вашего проекта. В статье приведены примеры использования MPI с языками программирования C и Python.
Подключение MPI в Visual Studio

В этой заметке показано как установить MPI, подключить его к Visual Studio, а затем использовать с заданными параметрами (числом вычислительных узлов). В статье используется Visual Studio 2015, т.к. именно с ней возникали проблемы у моих студентов (эта заметка написана студентами для студентов), однако вероятно инструкция подойдет и для других версий. Шаг 1:
Необходимо установить пакет HPC Pack 2008 SDK SP2 (в вашем случае может быть уже другая версия), доступный на официальном сайте Microsoft. Разрядность пакета и системы должны соответствовать. Шаг 2:
Необходимо настроить пути, для этого переходим во вкладку Debug — Properties:
Далее во вкладке VC++ Directories необходимо прописать в поле Include Directories:
“C:\Program Files\Microsoft HPC Pack 2008 SDK\Include”
. В поле Library Directories:
“C:\Program Files\Microsoft HPC Pack 2008 SDK\Lib\amd64”
. В поле с библиотеками, если стоит 32 разрядная версия, вместо amd64 нужно прописать i386.
Далее во вкладке Linker – Input в поле Additional Dependencies необходимо указать библиотеку
msmpi.lib

:
Шаг 3: Для настройки запуска необходимо перейти во вкладку Debugging и в поле Command указать:
“C:\Program Files\Microsoft HPC Pack 2008 SDK\Bin\mpiexec.exe”
. В поле Command Arguments указать, например,
-n 4 $(TargetPath)

Число 4 указывает на количество процессов.
Для запуска программы необходимо подключить библиотеку
mpi.h

. Путь к проекту не должен содержать кириллицу. При возникновении ошибок можно воспользоваться Microsoft MPI, доступный по на сайте Microsoft. Для этого после установки достаточно прописать в поле Command вкладки Debugging путь: “C:\Program Files\Microsoft MPI\Bin\mpiexec.exe” Также перед запуском программы не забудьте указать её разрядность:
Пример запуска программы с MPI:
#include #include using namespace std; int main(int argc, char **argv)

Работа программы на 2 узлах:
В соседней статье вы можете прочитать про установку MPI в Linux и настройку в CLion .
Просмотр 0 веток ответов
