Prometheus:Lmod: Różnice pomiędzy wersjami

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Skocz do:nawigacja, szukaj
(Utworzono nową stronę "==Opis pakietu== Pakiet Lmod umożliwia łatwą i dynamiczną modyfikację zmiennych powłoki dostosowując ją do specyficznych wymagań danego pakietu oprogramowania....")
 
Linia 1: Linia 1:
 
==Opis pakietu==
 
==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 <tt>nazwa-programu/wersja</tt>. W przypadku bibliotek schemat ma postać <tt>libs/nazwa-biblioteki/wersja</tt>, a dla programów narzędziowych (np. języki oprogramowania R lub Python) <tt>tools/nazwa-biblioteki/wersja</tt>. Zarówno dla pakietów oprogramowania jak i bibliotek najnowsza wersja jest domyślną, zatem ostatni człon <tt>wersja</tt> można pominąć. Zmian dokonuje się za pomocą komendy <tt>module</tt> i parametru określającego akcję.  
+
Pakiet [https://www.tacc.utexas.edu/research-development/tacc-projects/lmod 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 <tt>nazwa-programu/wersja</tt>. W przypadku bibliotek schemat ma postać <tt>libs/nazwa-biblioteki/wersja</tt>, a dla programów narzędziowych (np. języki oprogramowania R lub Python) <tt>tools/nazwa-biblioteki/wersja</tt>. Zarówno dla pakietów oprogramowania jak i bibliotek najnowsza wersja jest domyślną, zatem ostatni człon <tt>wersja</tt> można pominąć. Zmian dokonuje się za pomocą komendy <tt>module</tt> i parametru określającego akcję.  
  
 
Strona projektu: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod
 
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
+
 
 +
Dokumentacja projektu: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod/user-guide oraz http://lmod.readthedocs.io/
  
 
===Najczęściej wykorzystywane opcje:===
 
===Najczęściej wykorzystywane opcje:===
Linia 41: Linia 42:
  
 
===Wykorzystanie własnych modułów (Zaawansowane) ===
 
===Wykorzystanie własnych modułów (Zaawansowane) ===
Pakiet Lmod umożliwia również tworzenie własnych modułów (<tt>TCL<tt/> lub <tt>lua<tt/>). W tym celu należy wykonać polecenie <tt>module use /path/to/personal/modulefiles</tt>. Podana ścieżka określa katalog w którym użytkownik przetrzymuje własne moduły. Program <tt>lmod</tt> 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.
+
Pakiet Lmod umożliwia również tworzenie własnych modułów ([https://pl.wikipedia.org/wiki/Tcl_(język_programowania) TCL] lub [https://pl.wikipedia.org/wiki/Lua Lua]). W tym celu należy wykonać polecenie <tt>module use /path/to/personal/modulefiles</tt>. Podana ścieżka określa katalog w którym użytkownik przetrzymuje własne moduły. Program <tt>lmod</tt> automatycznie sprawdzi nowe zainstalowane moduły i doda je do listy dostępnych. W modułach można wykorzystywać funkcje języków [https://pl.wikipedia.org/wiki/Tcl_(język_programowania) TCL]  lub [https://pl.wikipedia.org/wiki/Lua Lua]. Informacje jak tworzyć własne moduły znajdują się na w [http://lmod.readthedocs.io/en/latest/020_advanced.html#user-created-modules dokumentacji Lmod].
  
 
===Uwagi ===
 
===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.
 
*  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 <tt>modules avail <nazwa></tt> znajduje jedynie moduły zaczynające się od ciągu znaków <tt><nazwa></tt> dlatego, jeżeli poszukuje się modułów zawierających gdziekolwiek ciąg <tt><nazwa></tt>, należy wykonać polecenie
 
<pre>
 
module spider nazwa
 
</pre>
 

Wersja z 09:04, 6 lip 2016

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 oraz http://lmod.readthedocs.io/

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ęzyków TCL lub Lua. Informacje jak tworzyć własne moduły znajdują się na w dokumentacji Lmod.

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.