Убедитесь, что весь код на всех машинах одинаков - Python MPI - PullRequest
4 голосов
/ 03 мая 2011

У меня может быть до 20 машин в моих кольцах MPI. Как я могу автоматизировать какую-то проверку, что все машины используют одну и ту же версию своего кода Python? Есть ли способ создать хэш всех модулей / исходных файлов в вашей программе?

1 Ответ

2 голосов
/ 03 мая 2011

Я не знаю способа хэширования содержимого пакета, кроме хеширования zip-архива кода. Но почему бы не создать локальное хранилище пакетов. Должны ли узлы MPI загружать последнюю версию пакета и устанавливать ее (локально или в virtualenv, если хотите) в начале работы? Вы всегда можете проверить версию пакета, используя setuptools / распространять также внутри кода.

Кроме того, вы можете использовать SCM, обновляя код перед каждым запуском. Затем вы можете проверить номер редакции scm как прокси для версии.

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

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