Version 38 (modified by piontek, 13 years ago) (diff) |
---|
QCG-SimpleClient oferuje prosty wzorowany na poleceniech systemu kolejkowego interfejs do infrastruktury QCG.
Środowisko
Maszyna dostępowa: qcg.man.poznan.pl
Wymagany modul: qcg/2.6
module load qcg/2.6
lub jesli inna wersje jest załadowana
module switch qcg/2.6
Polecenia:
- qcg-sub - zlecenie zadania do wykonania na infrastrukturze QCG zgodnie z uproszczonym opisem opisanym,
- qcg-list - wyświetlenie listy zleconych zadań wraz z informacjami o nich,
- qcg-info - wyświetlenie szczegółowej informacji o danym zadaniu,
- qcg-peek - podgłąd wyjścia (stdout, stderr) aplikacji
- qcg-proxy - utworzenie certyfikatu proxy użytkownika.
- qcg-cancel - anulowanie zadania
Składnia poleceń:
- qcg-sub plik_z_opisem - sciezka do pliku z uproszczonym opisem zadania
qcg-sub /home/piontek/tasks/date.qcg qcg-sub ./tasks/date.qcg
- qcg-list liczba jednostka - zadania z ostatnich "liczba" dni ("d"), godzin ("h"), minut ("m")
qcg-list 7d qcg-list 1m
- qcg-info jobId pokaz_opis - wyswietla informacje o danym zadaniu (jobId). Jesli pokaz_opis ma wartość "true" to dodatkowo wyświetlany jest opis zadnia. Domysla wartością jest "false".
qcg-info J1331196390748_date_3099 true
- gcg-peek JobId? [liczba_znaków]
qcg-peek J1331196390748_date_3099 qcg-peek J1331196390748_date_3099 10
- qcg-proxy - generacja certyfikatu proxy użytkownika
- qcg-cancel jobId - identyfikator eksperymentu
qcg-cancel J1331196390748_date_3099
Opis zadania:
Zlecany plik jest plikiem tekstowym, który może zawierać dyrektywy infrastruktury QCG. Dyrektywa jest każda linia zaczynająca sie od "#QCG". WAŻNE: Jeżeli w pliku nie zdefiniowano dyrektywy "executable" ani "application" uruchamiany jest zlecany plik z opisem.
Lista dyrektyw
- queue - wybrana kolejka systemu kolejkowego
#QCG queue=plgrid
- name - dyrektywa określająca nazwę zadania.
#QCG name=nobel-experiment
- output - lokalizacja gdzie ma być przegrane standardowe wyjście zadnia (stdout). Jesli nie jest lokalizacja gsiftp:// zaklada się, że jest wzgledem katalogu z którego zlecono zadanie
#QCG output=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/outputs/${JOB_ID}.output #QCG output=output.txt
- error - lokalizacja gdzie ma być przegrany standardowe wyjście blędów zadnia (stderr). Jesli nie jest lokalizacja gsiftp:// zaklada się, że jest wzgledem katalogu z którego zlecono zadanie
#QCG error=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/errors/${JOB_ID}.error #QCG error=error.txt
- candidate_host - nzawa maszyny na której może być uruchomione zadanie. Może być wiele takich dyrektyw dla alternatywnych maszyn.
#QCG candidate_host=reef.man.poznan.pl #QCG candidate_host=zeus.cyfronet.pl
- stage-in-file - dyrektywa kopiowania pliku wejściowego. Składnia "lokalizacja_źródłowa -> nazwa_docelowa_pliku". Lokalizacja źródłowa może być lokalizacją gsiftp:// lub ścieżką do pliku. W tym drugim przypadku zadkłada się, że jest względem katalogu, z którego zlecono zadanie.
#QCG stage-in-file=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/input.txt -> input.txt #QCG stage-in-file=input_file.txt -> input.txt
- stage-in-dir - Dyrektywa kopiowania katalogu wejściowego. Funkcjonalność i składnia analogiczna jak dla dydektywy "stage-in-file" tyle, że kopiowany jest katalog.
#QCG stage-in-dir=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs -> inputs #QCG stage-in-dir=input_dir -> inputs
- stage-out-file - dyrektywa kopiowania pliku wyjściowego. Składnia "nazwa_pliku_źródłowego > lokalizacja docelowa pliku". Lokalizacja docelowa może być lokalizacją gsiftp:// lub ścieżką do pliku. W tym drugim przypadku zadkłada się, że jest względem katalogu, z którego zlecono zadanie.
#QCG stage-out-file=results.txt -> gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/results/result.1 #QCG stage-out-file=result.txt -> ${JOB_ID}.result
- stage-out-dir - Dyrektywa kopiowania katalogu wyjściowego. Funkcjonalność i składnia analogiczna jak dla dydektywy "stage-out-file" tyle, że kopiowany jest katalog.
#QCG stage-out-dir=results -> gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/results/${JOB_ID} #QCG stage-out-dir=results -> result
- grant - nazwa grantu, w ramach którego ma być wykonane zadanie.
#QCG grant=plgpiontek_grant
- argument - argument aplikacji w przypadku użycia dyrektywy "executable" lub "application". Argument może wystąpić wielokrotnie. Każdy adgument powinien być przekazacy w osobnej dyrektywie. Argumenty do aplikacji przekazywane są w kolejności ich wystąpiena w pliku opisu
#QCG argument=arg1 #QCG argument=arg2
- environment - ustawienie zmiennych środowiskowych. Skladnia "nazwa -> wartosc". Każda zmiena musli być ustawiana w osobnej lini.
#QCG environment=name -> piontek #QCG environment=location -> poznan
- executable - lokalizacja pliku uruchomieniowego. Lokalizacja może być lokalizacją gsiftp:// lub scieżką do pliku. W tym drugim przypadku przyjmuje się, że jest względem katalogu, z którego zlecone zostało zadanie.
#QCG executable=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/executables/exec1 #QCG executable=executables/exec1
- application - nazwa aplikacji do uruchomienia.
#QCG application=namd
- persistent - dyrektywa określająca czy po zakończeniu zadanie system ma pozostawić katalog roboczy, w którym wykonywane było zadanie.
#QCG persistent
Przykłady
#QCG name=date #QCG application=date #QCG candidate_host=reef.man.poznan.pl #QCG output=output
#!/bin/bash #QCG queue=plgrid #QCG persistent #QCG name=tar #QCG candidate_host=reef.man.poznan.pl #QCG output=output #QCG error=error #QCG stage-in-dir=inputs -> inputs /bin/tar -czf output.tgz inputs/input.* #QCG stage-out-file=output.tgz -> output.tgz