Pakiet Modules 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 w Infrastrukturze PLGrid zdefiniowano odpowiadający mu moduł (lub moduły, jeśli istnieje więcej niż jedna wersja danego pakietu). Nazwy modułów dla aplikacji naukowych budowane są według schematu plgrid/apps/nazwa-programu/wersja
. W przypadku bibliotek schemat ma postać plgrid/libs/nazwa-biblioteki/wersja
, a dla programów narzędziowych (np. język oprogramowania Python) plgrid/tools/nazwa-narzedzia/wersja
. Zarówno dla pakietów oprogramowania jak i bibliotek przygotowano wersję też domyślną i przy jej ładowaniu ostatni człon modułu (tj. wersję)
można pominąć. Zmian dokonuje się za pomocą komendy module
i parametru określającego akcję.
Oprogramowanie oraz moduły dostępne w Infrastrukturze PLGrid można wyszukać korzystając z Katalogu Aplikacji.
Strona pakietu Modules: http://modules.sourceforge.net/
Dokumentacja pakietu Modules: http://modules.sourceforge.net/man/modulefile.html
Najczęściej wykorzystywane opcje
module add <moduł>
lub module load <moduł>
– załadowanie modułu danego programumodule rm <moduł>
lub module unload <moduł>
– usunięcie modułu danego programumodule list
– wyświetlenie listy aktualnie załadowanych modułówmodule avail
– wyświetla listę wszystkich dostępnych modułówmodule avail <nazwa>
– wyświetla listę wszystkich dostępnych wersji oprogramowania o nazwie rozpoczynającej się od <nazwa>
module purge
– usunięcie wszystkich załadowanych modułówmodule show <moduł>
lub module display <moduł>
– wyświetl informacje nt. danego modułumodule switch <moduł-1> <moduł-2>
– wymiana modułów w powłoce...
Załadowanie najnowszej wersji kompilatora Intel
Code Block | ||
---|---|---|
| ||
module add plgrid/tools/intel |
Załadowanie kompilatora Intel w wersji 13.0
Code Block | ||
---|---|---|
| ||
module add plgrid/tools/intel/13.0 |
Wylistowanie wszystkich dostępnych wersji kompilatorów Intel
Code Block | ||
---|---|---|
| ||
module avail plgrid/tools/intel |
Zamiana wersji Matlab z wersji R2012b na R2013b
Code Block | ||
---|---|---|
| ||
module switch plgrid/apps/matlab/R2012b plgrid/apps/matlab/R2013b |
Usunięcie ścieżek do kompilatora Intel w wersji 13.0 z środowiska
Code Block | ||
---|---|---|
| ||
module add plgrid/tools/intel/13.0 |
...
...
Pakiet modules umożliwia Modules umożliwia również tworzenie własnych modułów. W tym celu należy załadować moduł {{ use.own
. Przy pierwszym załadowaniu modułu use.own
zostanie zostanie założona w katalogu domowym użytkownika kartoteka {{ privatemodules
. W niej należy umieszczać własne moduły. Program {{modules
automatycznie automatycznie sprawdzi nowe zainstalowane moduły i doda je do listy dostępnych. W modułach można wykorzystywać funkcje języka TCL Tcl. Informacje jak tworzyć własne moduły znajdują się na stronie projektupakietu Modules.===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
...
Code Block | ||
---|---|---|
| ||
module avail 2>&1 | grep |
Polecamy również wykorzystanie Katalogu Aplikacji do wyszukiwania dostępnego oprogramowania oraz modułów.
grep <nazwa>