Модульное управление пакетами
На кластере установлена система управления загружаемыми модулями Lmod.
Краткая инструкция
С помощью команды module list можно увидеть список активированных модулей.
С помощью команды module avail можно увидеть список доступных для активации модулей.
С помощью команды module load <x> можно загрузить модуль <x>. Можно указать конкретную версию модуля, или загрузить сразу несколько модулей, например, команда:
module load intel/2022.0.1 impi
загрузит модуль компилятора Intel версии 2022.0.1 и последнюю версию библиотеки Intel MPI.
Любой загруженный модуль можно выгрузить с помощью команды module unload <x>.
Можно переключиться на другую версию уже загруженного модуля с помощью команды module load <x>/<version>.
Одновременно может быть загружен только один модуль из категории компиляторов (intel или gnu9) и только одна библиотека MPI (impi, mpich, openmpi4 и др.).
У модулей есть зависимости, и модули становятся доступны только после загрузки всех необходимых модулей. Например перед загрузкой MPI библиотеки нужно загрузить хотя бы один модуль с компилятором. Для загрузки параллельных библиотек (например, petsc) необходимо предварительно загрузить модуль с MPI библиотекой.
Используйте команду module spider чтобы найти все модули в системе. Также можно добавить ключевое слово, чтобы найти конкретный модуль, например, module spider petsc.
Команда module show <x> покажет список переменных окружения, которые будут добавлены при активации модуля. Эта информация может быть полезной, чтобы понять какие переменные нужно использовать для доступа к файлам модуля. Как правило они имеют вид NAME_DIR, NAME_INC, NAME_LIB и т.п.
С помощью команды module purge можно выгрузить все активированные модули.
Также вы можете использовать короткую версию команды ml вместо module list, ml <x> вместо module load <x>, ml -<x> вместо ml unload <x>, ml av вместо module avail и т.д.
Команды module load <x> можно добавить в свой ~/.bashrc файл.
Дополнительную информацию можно найти в документации Lmod.