Вопрос или проблема
Я устанавливаю slurm из репозитория Ubuntu OS, который доступен в Ubuntu 22.04. Я успешно устанавливаю slurm, но pmix
не отображается.
root@node1:~# srun --mpi=list
srun: MPI types are...
srun: none
srun: cray_shasta
srun: pmi2
Это работает с RHEL8. Есть ли какие-либо шаги, которые мне нужно выполнить, чтобы включить slurm с pmix
?
Примечание: slurm необходимо устанавливать с использованием репозитория ОС, а не из бинарников источников.
Детали ОС:
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
slurm версия в Ubuntu 22.04: slurm-wlm 21.08.5
Ответ или решение
Проблема, с которой вы столкнулись, заключается в том, что установив SLURM через репозиторий Ubuntu 22.04, вы не можете увидеть поддержку PMIx при выполнении команды srun --mpi=list
. Это может быть вызвано рядом факторов, связанных с конкретными настройками сборки SLURM в ваших системных репозиториях.
SLURM (Simple Linux Utility for Resource Management) – это система управления ресурсами, которая широко используется в высокопроизводительных вычислениях (HPC). PMIx (Process Management Interface for Exascale) является современным интерфейсом, который улучшает взаимодействие между задачами и позволяет реализовать более эффективное распределение процессов. Важно отметить, что поддержка PMIx в SLURM может зависеть от версии и способа сборки.
Определение проблемы
Из вашего описания следует, что вы используете версию SLURM 21.08.5 на Ubuntu 22.04. Этот пакет может быть собран без поддержки PMIx, поскольку менеджеры пакетов иногда оставляют такую функциональность отключенной для упрощения проекта или в связи с отсутствием встраивания в стандартные зависимости, которые предоставляет ОС.
Вывод команды srun --mpi=list
показывает, что PMIx не включен, и в таком случае только перечислены доступные MPI-реализации: none
, cray_shasta
, pmi2
.
Шаги для устранения проблемы
-
Проверка зависимостей: Убедитесь, что у вас установлены все необходимые зависимости для работы с PMIx. Вам понадобится MPI реализация, которая поддерживает PMIx, например Open MPI с поддержкой PMIx. Проверьте установленные пакеты:
dpkg -l | grep openmpi
Если они не установлены, добавьте необходимые пакеты:
sudo apt update sudo apt install libopenmpi-dev openmpi-bin
-
Переключение версий SLURM: Поскольку SLURM версии 21.08.5 может быть собран без PMIx, можно попробовать установить более новую версию SLURM, если она доступна через PPA (Personal Package Archive) или вручную. Однако вы упомянули, что предпочли бы не устанавливать из нестандартных источников. Возможно, вам все же стоит рассмотреть возможность установки из PPA, чтобы получить поддержку PMIx, если это действительно критично для вашей работы.
-
Конфигурация SLURM: Если у вас есть доступ к конфигурации SLURM, вам нужно будет убедиться, что в конфигурационных файлах (обычно
/etc/slurm-llnl/slurm.conf
) включена поддержка PMIx. В зависимости от вашей реализации это может быть настроено заранее. Обратите внимание на платформенные различия между RHEL и Ubuntu, которые могут повлиять на конфигурацию. -
Сборка SLURM с поддержкой PMIx (если все вышеперечисленное неудачно): Если вышеуказанные шаги не решают проблему, вам может понадобиться собрать SLURM из исходников с поддержкой PMIx. Это более трудоемкий процесс и противоречит вашему требованию установки из репозиториев, но это единственный способ гарантировать поддержку всех необходимых функций:
wget https://download.sched.org/slurm/slurm-<версия>.tar.bz2 tar xvjf slurm-<версия>.tar.bz2 cd slurm-<версия> ./configure --with-pmix make sudo make install
Заключение
Хотя установка SLURM через репозитории Ubuntu может оказаться более простой в управлении, она иногда ограничивает наличие новых или специализированных возможностей, таких как PMIx. Вам стоит рассмотреть вышеуказанные шаги для устранения проблемы. Поскольку у вас возникли сложности на Ubuntu в отличие от RHEL8, вероятно, сборка пакетов для этих дистрибутивов имеет различия, поэтому, предшествующий опыт на RHEL может не полностью переноситься.
Если вы будете следовать этим указаниям, в конечном итоге вы сможете получить SLURM с необходимой поддержкой PMIx.