Kompilacja aplikacji na klastrze: Różnice pomiędzy wersjami

Z KdmWiki
Skocz do: nawigacji, wyszukiwania
Linia 12: Linia 12:
  
 
'''Uwaga:''' Zadania kompilacji powinny być oznaczone parametrem <code>-l software=nazwa_kompilatora</code>.
 
'''Uwaga:''' Zadania kompilacji powinny być oznaczone parametrem <code>-l software=nazwa_kompilatora</code>.
 +
 +
'''$qsub -I -l software=icc -l select=1:ncpus=1:mem=1000mb -q short6h '''
 +
'''$source /usr/local/Modules/3.2.7/init/bash'''
 +
'''$ module load gcc/4.6.0'''
 +
''' gcc/4.6.0 load complete.'''
 +
'''$gcc hello_world.c -o hello_world'''
  
 
Po przyznaniu zasobów i otrzymaniu powłoki należy przygotować swoje środowisko pracy do kompilacji korzystając z [[Korzystanie z modułów | modułów]].
 
Po przyznaniu zasobów i otrzymaniu powłoki należy przygotować swoje środowisko pracy do kompilacji korzystając z [[Korzystanie z modułów | modułów]].

Wersja z 16:18, 13 wrz 2011

< Podręcznik użytkownika KDM < Kompilacja aplikacji na klastrze

Użytkownik może kompilować swoje oprogramowanie zgodnie z regułami pracy na klastrze. Niedopuszczalna jest kompilacja na węźle dostępowym (supernova) lub po zalogowaniu przez SSH na dowolny z węzłów obliczeniowych.

Kompilację programu należy traktować jako jedno z zadań i wstawiać do jednej z kolejek systemu PBS. Najprościej jest zgłosić żądanie o dostęp do zasobów w trybie interaktywnym, wówczas system kolejkowy przydziela powłokę (shell) umożliwiając interaktywną pracę na węzłach obliczeniowych.

W tym celu należy wykonać polecenie (kolejki i wymagania są przykładowe):

  • zadanie interaktywne w kolejce domyślnej normal, z domyślnymi zasobami - 1 rdzeń i 2 GB pamięci RAM:
qsub -I -l software=gcc 
  • zadanie interaktywne w kolejce short6h, z zasobami - 1 rdzeń i 1 GB pamięci RAM:
qsub -I -l software=icc -l select=1:ncpus=1:mem=1000mb -q short6h 

Uwaga: Zadania kompilacji powinny być oznaczone parametrem -l software=nazwa_kompilatora.

$qsub -I -l software=icc -l select=1:ncpus=1:mem=1000mb -q short6h 
$source /usr/local/Modules/3.2.7/init/bash
$ module load gcc/4.6.0
 gcc/4.6.0 load complete.
$gcc hello_world.c -o hello_world

Po przyznaniu zasobów i otrzymaniu powłoki należy przygotować swoje środowisko pracy do kompilacji korzystając z modułów.

Zobacz też: