Инструкции. Настройка и запуск отладчика MPI-кластера

С помощью отладчика MPI-кластера можно отлаживать параллельные приложения в кластере Windows HPC Server, взаимодействующие через интерфейс передачи сообщений (MPI). В Visual Studio можно выбрать головной узел кластера, задать количество процессов, включаемых в сеанс отладки, настроить дополнительные свойства сеанса отладки кластера и запустить отладчик.

Требования для использования отладчика MPI-кластера

  • На компьютере разработчика должна быть установлена среда Visual Studio 2010 Professional Edition или более высокой версии (с удаленным отладчиком).

  • У пользователя должны быть права администратора кластера.

  • У Visual Studio должен быть доступ ко всем вычислительным узлам, на которых предполагается запускать сеансы отладки. Необходимый доступ обеспечивают сценарии, указанные ниже.

    • Приложение разрабатывается на головном узле кластера или на выделенном узле входа.

    • Используется кластер, в котором вычислительные узлы подключены к корпоративной сети (топология 2, 4 или 5), а компьютер разработчика присоединен к тому же домену или к домену, для которого настроены отношения доверия с доменом кластера.

  • Для отправки приложения в кластер HPC с клиентского компьютера необходимо установить пакет Microsoft HPC Pack 2008.

  • Для построения MPI-программ с использованием интерфейса передачи сообщений корпорации Майкрософт необходимо, чтобы на компьютере разработчика был установлен пакет Windows HPC Server 2008 SDK.

Настройка отладчика MPI-кластера

  1. Откройте в Visual Studio решение, в котором содержится параллельное приложение.

  2. В меню Проект выберите пункт Свойства <имя_проекта>. Откроется диалоговое окно Страницы свойств.

  3. Разверните узел Свойства конфигурации и выберите элемент Отладка.

  4. В группе Загружаемый отладчик выберите элемент Отладчик MPI-кластера.

  5. Выберите узлы и количество процессов для отладки.

    1. В раскрывающемся списке Среда выполнения выберите элемент Правка узла Hpc. Откроется диалоговое окно Выбор узла.

    2. В раскрывающемся списке Головной узел выберите имя головного узла кластера, который необходимо использовать. Если нужный головной узел не отображается, введите имя или адрес IPv4 головного узла.

    3. В поле Количество процессов выберите количество запускаемых процессов.

    4. В поле Назначить процесс для выберите способ выделения процессов. Можно выделить один процесс на ядро, сокет или узел.

    5. Дополнительно в поле Выбор узла из можно указать группу узлов, для которых необходимо запустить сеанс отладки. Узлы из выбранной группы отобразятся в списке узлов.

    6. Дополнительно для запроса отдельных узлов в поле Выбрать узлы для назначения вручную можно выбрать в списке отдельные узлы.

    7. Нажмите кнопку ОК, чтобы сохранить изменения и закрыть диалоговое окно Выбор узла.

  6. Настройте свойства, указанные ниже.

    1. Каталог развертывания.

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

      \\myTestCluster\CcpSpoolDir\$(UserName)\$(ProjectName)

    2. Рабочий каталог.

      Укажите локальный рабочий каталог для каждого вычислительного узла. Файлы из каталога развертывания будут скопированы в рабочие каталоги на вычислительных узлах.

    3. Команда приложения.

      Укажите имя или путь к приложению, которое будет запущено MPI на каждом узле кластера (это приложение, отлаживаемое в Visual Studio). Путь может указывать на общий ресурс или быть локальным на каждом вычислительном узле в кластере. Если это локальный путь, он должен быть одинаковым на всех узлах, например:

      $(WorkDir)\$(TargetFileName)

    4. Развертывание CRT.

      Выберите Да, чтобы в Visual Studio вместе с приложением развертывались сборки среды выполнения C (CRT).

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

    5. Очистка развертывания.

      Выберите вариант Да.

      Dd560809.note(ru-ru,VS.100).gifЗамечание.
      Если в каталоге развертывания содержатся файлы, отличные от файлов, записанных в него Visual Studio, он не будет удален. Например, если приложение выводит данные в каталог развертывания, для удаления каталога следует использовать скрипт, выполняемый после отладки.

  7. Нажмите кнопку ОК, чтобы сохранить изменения и закрыть окно Страницы свойств.

Dd560809.note(ru-ru,VS.100).gifЗамечание.
По умолчанию при отладке нескольких процессов точка останова влияет на все отлаживаемые процессы. Чтобы избежать прерывания процессов в непредвиденном месте, снимите флажок Прерывать все процессы при прерывании одного. Дополнительные сведения об изменении поведения точки останова см. в разделе Инструкции. Прерывание выполнения.

Запуск отладчика MPI-кластера

  1. Установите одну или несколько точек останова в коде. Дополнительные сведения об указании точек останова см. по ссылке Точки останова и точки трассировки.

  2. Нажмите клавишу F5, чтобы запустить отладчик.

    Dd560809.note(ru-ru,VS.100).gifЗамечание.
    Начать работу с отладчиком MPI-кластера без запуска отладки невозможно. Сочетание клавиш Ctrl+F5 (или выбор пункта Запуск без отладки в меню Отладка) также запускает отладку.

  3. Поскольку задание отправляется в кластер, отобразится окно ввода пароля для подключения к кластеру. Введите пароль и нажмите клавишу ВВОД.

  4. После запуска отладчика проверьте расположение процессов в окне Процессы. Узнайте для каждого процесса вычислительный узел, на котором запущен процесс. Эти сведения содержатся в столбце Квалификатор транспорта.

Dd560809.note(ru-ru,VS.100).gifЗамечание.
После запуска отладчика можно выбрать активный процесс для отладки, дважды щелкнув его в окне Процессы. Чтобы открыть окно Процессы, в меню Отладка выберите пункт Windows и щелкните элемент Процессы.

См. также

Понятия

Свойства конфигурации отладчика MPI-кластера
Пошаговое руководство. Запуск отладчика MPI-кластера в Visual Studio 2010
Отладка приложений MPI в кластере HPC

Другие ресурсы

Основы отладки
mpiexec Command Reference