/usr/bin/modulecmd: нет такого файла или каталога
Я использую sbatch для отправки моей работы.
Командная строка mpirun --version
дает:
Библиотека Intel(R) MPI для ОС Linux*, версия 5.0, сборка 20140507
Copyright (C) 2003-2014, Intel Corporation. Все права защищены.
Поэтому я думаю, что я работаю с Intel MPI.
Следуя инструкциям: отправляя работу MPI с использованием Intel MPI, я пишу свой сценарий так:
#!/bin/bash
#SBATCH --ntask=4
#SBATCH -t 00:10:00
. ~/.bash_profile
module load intel
mpirun mycc
mycc - это исполняемый файл, который я получаю после компиляции исходных файлов с помощью mpicc.
Тогда я использую команду sbatch -p partitionname -J myjob script.sh
, моя работа не удалась с кодом выхода 127:0. Файл slurm-jobid.out говорит, что (оставьте в стороне установленное предупреждение локали):
/ usr / share / Modules / init / sh: строка 2: /usr/bin/modulecmd: нет такого файла или каталога /tmp/slurmd/job252624/slurm_scirpt: строка 10: mpirun: команда не найдена
Но я проверил и файл / usr / bin / modulecmd существует.
Любое предложение ценится.
редактировать
Я также задал вопрос здесь.
Я удалил исходный оператор и модуль загрузки один.
Я попытался загрузить модуль в узел входа в систему, прежде чем отправлять свою работу. Но что-то не так. Это говорит о том, что:
moduleCmd_Lad.c (204): Ошибка: 105: невозможно найти файл модуля для 'intel'
я использую module avail
Команда, чтобы увидеть, какие модули доступны:
--------- / USR / доли / Модули / modulefiles -------------------
точечный модуль-информация mpich2-x86_64 use.won
module-cvs modules null
--------- / и т.д. / modulefiles ---------------------------------
compat-openmpi-psm-x86_64 compat-openmpi-x86_64
Прости меня за грязное форматирование.
решаемая
Проблема наконец-то решена. Мой последний скрипт.sh выглядит так:
#!/bin/bash
srun -p partitionname -n 4 -t 00:10:00 mycc
Тогда используйте команду sbatch -p partitionname -J myjob script.sh
представить работу.
1 ответ
Очевидно, что / usr / bin / modulecmd существует не во всех вычислительных узлах. Убедитесь, что он существует во всех вычислительных узлах, и попробуйте снова.
Также вам не нужно создавать исходный файл bash_profile, если / home используется всеми узлами, поскольку Slurm по умолчанию экспортирует всю среду в задание.