Prometheus:Lmod
Spis treści
Opis pakietu
Pakiet Lmod umożliwia łatwą i dynamiczną modyfikację zmiennych powłoki dostosowując ją do specyficznych wymagań danego pakietu oprogramowania. Dla każdego z pakietów oprogramowania dostępnego na klastrze zdefiniowano odpowiadający mu moduł (lub moduły, jeśli istnieje więcej niż jedna wersja danego pakietu). Nazwy modułów budowane są wg schematu nazwa-programu/wersja. W przypadku bibliotek schemat ma postać libs/nazwa-biblioteki/wersja, a dla programów narzędziowych (np. języki oprogramowania R lub Python) tools/nazwa-biblioteki/wersja. Zarówno dla pakietów oprogramowania jak i bibliotek najnowsza wersja jest domyślną, zatem ostatni człon wersja można pominąć. Zmian dokonuje się za pomocą komendy module i parametru określającego akcję.
Strona projektu: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod Dokumentacja projektu: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod/user-guide
Najczęściej wykorzystywane opcje:
- module add <moduł> lub module load <moduł> – załadowanie modułu danego programu
- module rm <moduł> lub module unload <moduł> – usunięcie modułu danego programu
- module list – wyświetlenie listy aktualnie załadowanych modułów
- module avail – wyświetla listę wszystkich dostępnych modułów
- module avail <nazwa_oprogramowania> – wyświetla listę wszystkich dostępnych wersji oprogramowania o nazwie nazwa_oprogramowania
- module purge – usunięcie wszystkich załadowanych modułów
- module show <moduł> lub module display <moduł> – wyświetl informacje nt. danego modułu
- module switch <moduł-1> <moduł-2> – wymiana modułów w powłoce
- module spider <tekst> – wyszukuje wszystkie moduły posiadające w nazwie określony tekst
Przykładowe użycie
- Załadowanie najnowszej wersji kompilatora Intel
module add compilers/intel
- Załadowanie kompilatora Intel w wersji 15.0.2
module add compilers/intel/15.0.2
- Wylistowanie wszystkich dostępnych wersji kompilatorów Intel
module avail compilers/intel
- Zamiana wersji 1.6.5 OpenMPI na wersję 1.8.4
module switch tools/openmpi/1.6.5-intel-15.0.2 tools/openmpi/1.8.4-intel-15.0.2
- Usunięcie ścieżek do kompilatora Intel w wersji 15.0.2 z środowiska
module rm compilers/intel/15.0.2
Wykorzystanie własnych modułów (Zaawansowane)
Pakiet Lmod umożliwia również tworzenie własnych modułów (TCL lub lua). W tym celu należy wykonać polecenie module use /path/to/personal/modulefiles. Podana ścieżka określa katalog w którym użytkownik przetrzymuje własne moduły. Program lmod automatycznie sprawdzi nowe zainstalowane moduły i doda je do listy dostępnych. W modułach można wykorzystywać funkcje języka TCL. Informacje jak tworzyć własne moduły znajdują się na stronie projektu.
Uwagi
- Zaleca się ładować moduły jedynie w skryptach obliczeniowych, a nie w skryptach uruchamianych przy logowaniu na maszynę dostępową lub węzeł obliczeniowy. Dzięki temu łatwiej kontrolować środowisko uruchomieniowe oprogramowania, które ma zostać użyte oraz uniknąć konfliktów pomiędzy załadowanymi modułami.
- Komenda modules avail <nazwa> znajduje jedynie moduły zaczynające się od ciągu znaków <nazwa> dlatego, jeżeli poszukuje się modułów zawierających gdziekolwiek ciąg <nazwa>, należy wykonać polecenie
module spider nazwa