Развертывание приложения MPI в Windows Azure - PullRequest
8 голосов
/ 28 марта 2012

Существует существующее научное приложение MPI, написанное на C (для linux), которое я хотел бы запустить в Windows Azure. Это возможно?

  1. Если возможно, как развернуть приложение?

  2. Нужно ли конвертировать его в Microsoft MPI?

  3. Есть ли особый вид службы Azure, который мне нужно купить для этого?

  4. Нужно ли писать управляемую оболочку, чтобы она работала?

Любые предложения / мнения / ссылки будут очень полезны.

P.S. Я новичок в Azure.

Ответы [ 3 ]

5 голосов
/ 30 марта 2012

Так что вам не нужно делать ничего особенного для запуска MPI в Azure.Обратите внимание, что узлы Azure (в отличие, скажем, от кластерных экземпляров Amazon) на самом деле не настроены для этого;у вас не обязательно высокоскоростная сеть, а узлы не обязательно находятся рядом друг с другом.Так что тесно связанный код, вероятно, работает не так хорошо, в то время как многие люди успешно используют Amazon или другие сервисы для такой работы.

В любом случае, "Microsoft" MPI, поставляемый с HPC Server, представляет собой просто ребрендинг и, возможно, слегка подправлен MPICH2 ;так что это стандартный болотный MPI, и это не должно вызвать проблем.Любая программа MPI, которая соответствует стандарту MPI, должна быть в порядке.

Что касается запуска одного задания MPI, то это не сложнее, чем запуск задания MPI в первый раз на нескольких (скажем) рабочих столах;Вы должны убедиться, что ваш хост-файл настроен правильно, и что MPI настроен для связи с соответствующим IP-блоком.В Technet у них есть пример запуска теста linpack на узлах Azure (включая ссылку на то, что нужно для того, чтобы убедиться, что ваши сотрудники Azure работают на сервере HPC ).Они пропускают пару шагов, потому что linpack - это готовый двоичный файл, который вы можете загрузить, но компиляция с использованием MPI довольно проста.

Что касается развертывания приложения, чтобы вы могли запускать его регулярно (или чтобы другие запускали его)Я расскажу другим о том, как лучше это сделать.

3 голосов
/ 28 марта 2012

Microsoft скоро запустит поддержку виртуальных машин Linux, которые будут размещены в Azure .Таким образом, вы можете создать виртуальную машину Linux, установить и настроить приложение MPI и перенести его в Azure.

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

  • Node.js , работающий в Linux или Windows
  • Perl , Python , Ruby и / или PHP все работает на Linux или Windows
  • .NET-код, работающий в рабочей роли Windows или в Mono на вашей виртуальной машине Linux

Если вас больше всего интересует использование конфигурации службы Azure, динамическое добавление / удаление рабочих ролей с помощью Azureхранение и т. д., тогда вам повезет - все вышеперечисленное может управляться через интерфейсы HTML / JSON REST, что означает, что все, что может общаться по HTTP, может (с правильными учетными данными) конфигурировать, управлять, контролировать ваши сервисы и сохранять / извлекатьданные в / из хранилища.

HTH.

0 голосов
/ 22 сентября 2016

Я знаю, что эта тема довольно старая!Но в случае, если кто-то все еще здесь останавливается:

Azure был тем временем расширен специальными высокопроизводительными экземплярами, которые поддерживают высокопроизводительные соединения между экземплярами.

Так что, если вы посмотрите на Экземпляры * A8 и A9 , кроме стандартного сетевого интерфейса 10 Гбит / с, они имеют дополнительный сетевой интерфейс, оптимизированный для приложений MPI.

32-Гбит / с, RDMA-совместимый: обеспечивает низкую задержкувысокопроизводительная связь приложений между экземплярами в рамках одного облачного сервиса или набора доступности.Зарезервировано только для трафика MPI.

Существует также довольно много документации для настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...