none
Отладка MPI-приложений в vs2010, mpishim RRS feed

  • Вопрос

  • в vs2010 появилась очень удобная возможность: отлаживать приложения MS-MPI, задействуя планировщик HPC (это можно делать уже начиная с 2005-й, но именно интегрировано в среду это стало только сейчас)

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

    суть примерно в том, что mpishim ресолвит не все адреса для головного узла, а берет просто первый попавшийся,
    отсюда, если вычислительный узел не находится с ним в одной сети, то он просто не видит головной узел,
    а mpishim при этом возвращается с ошибкой
      "MPISHIM: Unable to connect to devenv on machine ..." в 2008-й студии
      и с "MPISHIM: Unable to connect to Visual Studio on machine ..." - в 2010-й

    есть ли какие-то движения в решении этой проблемы?

    upd: в принципе, и с этим можно работать, но тогда для отладки приходится заходить на головной узел через RDP
    и пускать задачу четко с приватного интерфейса, а это неудобно

    к примеру:
    Project -> Properties -> Configuration Properties -> Debugging -> Run Environment: 192.168.0.1/2/Node/ComputeNodes,

    где 192.168.0.1 - адрес головного узла в приватной сети

    • Перемещено Yuriy Lenchenkov 21 декабря 2010 г. 14:28 (От:Windows HPC Server 2008)
    16 апреля 2010 г. 11:31

Все ответы

  • наряду со всем вышесказанным, еще уперся в проблему при запуске отладки из под 32-битной оси, т.е.:
    1. на машине разработчика - 32-битная WinXP,
    2. он запускает с этой машины удаленную MPI отладку на кластере, через настройки:
        Project -> Properties -> Configuration Properties -> Debugging -> MPI Cluster Debugger
    3. при выполнении "Start Debugging", над vs возникает стандартное окно ошибки с текстом: "job.exe - обнаружена ошибка. Приложение будет закрыто. Приносим свои извинения за неудобства.", "отправить отчет" и т.д., т.е. до отладки дело не доходит

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

    если делать то же самое, сменив только машину разработчика на win serv 2008 x64, такой ошибки не будет,
    отладка пройдет, но этот вариант естественно тоже неудобен, т.к. у нас таких машин в принципе нет (это был просто запуск отладки с RDP другого кластера)

    пробовал отлаживать как 32-битное, так и 64-битное приложение, результат одинаковый, да, сам кластер 64-битный

    вопрос классический: "что делать?"

    upd: да, после закрытия окна с ошибкой "job.exe - обнаружена ошибка ...", в служебную консоль MPI вываливается только одно сообщение: Process is terminated due to StackOverflowException.

    20 апреля 2010 г. 8:22