...
Section | ||||
---|---|---|---|---|
|
Table of Contents | ||||
---|---|---|---|---|
|
...
...
Zlecenie zadania do wykonania na infrastrukturze QCG zgodnie z uproszczonym opisem
plik_z_opisem - ścieżka do pliku z uproszczonym opisem zadania
Code Block |
---|
qcg-sub /home/piontek/tasks/date.qcg
qcg-sub ./tasks/date.qcg |
qcg-list czas_jednostka [stan,[stan]]
...
...
Note |
---|
Do poprawnego działania polecenia qcg-* wymagają ważnego certyfikatu proxy użytkownika, który jest używany do potwierdzenia tożsamości użytkownika w infrastrukturze. Dla wygody użytkownika w przypadku braku ważnego certyfikatu proxy, lub jego zbyt krótkiej ważności, certyfikat jest automatycznie tworzony przy wywołaniu dowolnego polecenia qcg-*. W przypadku tworzenia certyfikatu użytkownik proszony jest o podanie hasła do certyfikatu, które zostało wybrane podczas generowania certyfikatu. Czas ważności tworzonego certyfiaktu proxy i jego minimalna ważność jest konfigurowalna. |
Info |
---|
Wszystkie polecenia qcg-* wywołane z przełącznikiem -h/--help wyświetlają informacje o sposobie ich użycia. |
Code Block |
---|
qcg-list<command> qcg-list 7dh qcg-list<command> 1m qcg-list 7d finished qcg-list 1m finished,failed |
Dla wygody użytkowników zamiast listy stanów możliwe jest podanie zdefiniowanych stałych:
Code Block |
---|
qcg-list 7d all
qcg-list 7d terminated
qcg-list 7d unterminated
|
qcg-info jobId pokaz_opis
Wyświetlenie szczegółowej informacji o danym zadaniu.
jobId - identyfikator eksperymentu.
pokaz_opis- Jeśli pokaz_opis ma wartość „true” to dodatkowo wyświetlany jest opis zadnia. Domyślną wartością jest „false”.
Code Block |
---|
qcg-info J1331196390748_date_3099 true
|
gcg-peek jobId liczba_znaków
Podgląd wyjścia (stdout, stderr) aplikacji.
jobId - identyfikator eksperymentu,
liczba_znaków- liczba znaków do wyświetlenia,
Code Block |
---|
qcg-peek J1331196390748_date_3099
qcg-peek J1331196390748_date_3099 10
|
qcg-proxy
Utworzenie certyfikatu proxy użytkownika.
Code Block |
---|
qcg-proxy
|
qcg-cancel jobId
Anulowanie zadania.
jobId - identyfikator eksperymentu
Code Block |
---|
qcg-cancel J1331196390748_date_3099
|
qcg-clean jobId
Usunięcie katalogu roboczego zadnia.
jobId - identyfikator eksperymentu
Code Block |
---|
qcg-clean J1331196390748_date_3099
|
qcg-interactive plik_z_opisem
Zlecenie zadania interaktywnego.
plik_z_opisem - ścieżka do pliku z uproszczonym opisem zadania
Code Block |
---|
qcg-interactive /home/piontek/tasks/bash.qcg
qcg-interactive ./tasks/bash.qcg
|
Korzystając z polecenia qcg-interactive można zlecić wykonanie dowolnej interaktywnej tekstowej aplikacji.
Szczególnie częstym i użytecznym przypadkiem jest interaktywne uruchomienie konsoli poleceń umożliwiające np. kompilację oprogramowani na klastrze, do którego nie ma dostępu poprzez SSH.
W opisie zadania dla interaktywnego uruchomienia konsoli poleceń wystarczy podać nazwę klastra, na którym ma sie uruchomić konsola oraz podać scieżkę do preferowanego interpretera poleceń (np. bash).
Code Block |
---|
#QCG host=inula.man.poznan.pl
/bin/bash |
W opisie zadania interaktywnego można korzystać również z innych dyrektyw QCG celem podania np. wymagań zasobowych dla zadania interaktywnego.
qcg-connetct jobId
Utworzenie z klienta QCG interaktywnej sesji w katalogu roboczym danego zadania
jobId - identyfikator eksperymentu
Code Block |
---|
qcg-connect J1331196390748_date_3099 |
qcg-refetch jobId
Ponowne skopiowanie plików wynikowych zadania.
jobId - identyfikator eksperymentu
Code Block |
---|
qcg-refetch J1331196390748_date_3099
|
Zlecany plik jest plikiem tekstowym, który może zawierać dyrektywy infrastruktury QCG.
Dyrektywą jest każda linia zaczynająca się od ”#QCG”.
Info |
---|
Jeżeli w pliku nie zdefiniowano dyrektywy ” |
Code Block |
---|
#QCG application=namd
|
Code Block |
---|
#QCG argument=arg1
#QCG argument=arg2
|
W przypadku nie podania dyrektywy „not_before” system próbuje dokonać rezerwacji zasobów od aktualnej chwili. Dyrektywa wyklucza równoczesne użycie „not_after”.
Code Block |
---|
#QCG deadline=P3DT12H |
Code Block |
---|
#QCG not-before=2012.07.25
#QCG deadline=P3DT12H |
Code Block |
---|
#QCG environment=name -> piontek
#QCG environment=location -> poznan
|
error - lokalizacja gdzie ma być przegrany standardowe wyjście błędów zadnia (stderr). Jeśli nie jest to lokalizacja gsiftp zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie
Code Block |
---|
#QCG error=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/errors/${JOB_ID}.error
#QCG error=error.txt
|
Code Block |
---|
#QCG executable=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/executables/exec1
#QCG executable=executables/exec1
#QCG executable=executables/exec1 -> exec-file
|
Code Block |
---|
#QCG grant=plgpiontek_grant
|
Code Block |
---|
#QCG host=reef.man.poznan.pl
#QCG host=zeus.cyfronet.pl
|
Code Block |
---|
#QCG input=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/experiment.input
#QCG input=input.txt
|
Code Block |
---|
#QCG memory=1024
|
Code Block |
---|
#QCG module=nwchem/6.0
#QCG module=namd |
Code Block |
---|
#QCG monitor=monitor-script.sh
|
Code Block |
---|
#QCG name=nobel-experiment
|
Przykład dla PBSa oznaczający dane zadanie jako wznawialne.
(-r y|n Declares whether the job is rerunable.)
Code Block |
---|
#QCG native=-r n |
Code Block |
---|
#QCG nodes=10:5:1
#QCG nodes=12:12
|
Code Block |
---|
#QCG not-after=2012.08.25
#QCG walltime=PT2H |
Code Block |
---|
#QCG not-after=2012.08.25 13:20
#QCG walltime=PT2H |
Code Block |
---|
#QCG not-before=2012.07.25
#QCG walltime=PT2H |
Code Block |
---|
#QCG not-before=2012.07.25 15:20
#QCG walltime=PT2H |
Code Block |
---|
#QCG note=moje pierwsze zadanie QCG
|
Code Block |
---|
#QCG notify=mailto:piontek@man.poznan.pl
#QCG notify=xmpp:tomasz.piontek@gmail.com |
W przypadku checi otrzymywania powiadomień protokołem xmpp konieczne jest dodanie do kontaktów nadawcy: qcg-notification@plgrid.pl
Code Block |
---|
#QCG output=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/outputs/${JOB_ID}.output
#QCG output=output.txt
|
Code Block |
---|
#QCG persistent
|
Code Block |
---|
#QCG postprocess=tar cvf wynik.tar *
|
Code Block |
---|
#QCG postprocess=postprocess-script.sh
|
Code Block |
---|
#QCG preprocess=mkdir outputs
|
Code Block |
---|
#QCG preprocess=preprocess-script.sh
|
Code Block |
---|
#QCG procs=32
|
Code Block |
---|
#QCG properties=mpi,ib,lustre
|
Code Block |
---|
#QCG queue=plgrid
|
Code Block |
---|
#QCG host=reef.man.poznan.pl
#QCG reservation=piontek.0 |
Code Block |
---|
#QCG stage-in-dir=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs -> inputs
#QCG stage-in-dir=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs
#QCG stage-in-dir=input_dir -> inputs
#QCG stage-in-dir=input_dir
|
Info |
---|
Skopiowanie całego katalogu w którym uruchomiony został klient odbywa się poprzez podanie ”.” (kropki) jako nazwy katalogu źródłowego i ewentualnie docelowego |
Code Block |
---|
#QCG stage-in-dir=. -> .
#QCG stage-in-dir=.
#QCG stage-in-dir=. -> input |
W przypadku braku drugiego parametru plik kopiowany jest pod nazwę źródlową.
Code Block |
---|
#QCG stage-in-file=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/input.txt -> input.txt
#QCG stage-in-file=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/input.txt
#QCG stage-in-file=input_file.txt -> input.txt
#QCG stage-in-file=input_file.txt
|
Code Block |
---|
#QCG stage-out-dir=results -> gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/results/${JOB_ID}
#QCG stage-out-dir=results -> gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/results/${JOB_ID}
#QCG stage-out-dir=results -> result
#QCG stage-out-dir=results
|
Info |
---|
Skopiowanie całego katalogu w którym wykonane było zadanie odbywa się poprzez podanie ”.” (kropki) jako nazwy katalogu źródłowego. |
Code Block |
---|
#QCG stage-out-dir=. -> .
#QCG stage-out-dir=.
#QCG stage-out-dir=. -> output |
Code Block |
---|
#QCG stage-out-file=results.txt -> gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/results/result.1
#QCG stage-out-file=results.txt
#QCG stage-out-file=result.txt -> ${JOB_ID}.result
#QCG stage-out-file=result.txt
|
Code Block |
---|
#QCG use-reservation
#QCG walltime=PT2H |
Code Block |
---|
#QCG walltime=P3DT12H |
Code Block |
---|
#QCG watch-output=mailto:piontek@man.poznan.pl,20,ENERGY |
Code Block |
---|
#QCG stage-in-file=nft_expr_file
#QCG watch-output=mailto:piontek@man.poznan.pl,30,ntf_expr_file |
W opisie zadania możliwe jest użycie następujących zmiennych:
Uruchomienie na klastrze galera aplikacji „gaussian”.
Code Block |
---|
#QCG queue=plgrid-long
#QCG name=etanal
#QCG note=etanal Gaussian
#QCG output=${JOB_ID}.output
#QCG error=${JOB_ID}.error
#QCG stage-in-file=etanal.gjf -> etanal.gjf
#QCG stage-out-file=wynik.tar -> ${JOB_ID}.tar
#QCG nodes=1:12
#QCG host=galera.task.gda.pl
#QCG persistent
#QCG walltime=P7D
#QCG notify=mailto:piontek@man.poznan.pl
#QCG memory=15360
#QCG preprocess=echo START
#QCG application=g09
#QCG argument=etanal.gjf
#QCG postprocess=tar cvf wynik.tar *
|
Eksperyment polegający na:
Code Block |
---|
#!/bin/bash
#QCG queue=plgrid
#QCG persistent
#QCG 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 |
Uruchomienie aplikacji NAMD
-help |
Anulowanie zadania
Code Block |
---|
Cancel task(s)
usage: qcg-cancel [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
usage: qcg-client cancel_task [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
Options:
-h,--help display help message
-v,--version display version
Arguments:
JOBID identifier of the job
TASKID optional identifier of the task
The default identifier of task is 'task' |
Polecenie umożliwia anulowanie listy zadań.
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku identyfikatora przyjnowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Code Block |
---|
qcg-cancel J1363865127610__1345
qcg-cancel J1363865127610__1345/task
qcg-cancel J1363865127610__1345 J1363865128119__5737 |
Usunięcie katalogu roboczego zadnia, lub grupy zadań.
Code Block |
---|
Clean task(s). Remove working directory
usage: qcg-clean [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
usage: qcg-client clean_task [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
Options:
-h,--help display help message
-v,--version display version
Arguments:
JOBID identifier of the job
TASKID optional identifier of the task
The default identifier of task is 'task' |
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku identyfikatora przyjmowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Code Block |
---|
qcg-clean J1363865127610__1345
qcg-clean J1363865127610__1345/task
qcg-clean J1363865127610__1345 J1363865128119__5737 |
Utworzenie z klienta QCG interaktywnej sesji w katalogu roboczym danego zadania.
Code Block |
---|
Connect to the task. Open interactive terminal in the working directory of the task
usage: qcg-connect [-h] [-v] JOBID[/TASKID]
usage: qcg-client connect_to_tasks [-h] [-v] JOBID[/TASKID]
Options:
-h,--help display help message
-v,--version display version
Arguments:
JOBID identifier of the job
TASKID optional identifier of the task
The default identifier of task is 'task' |
Identyfikator podawany jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku identyfikatora przyjmowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Code Block |
---|
qcg-connect J1363865127610__1345
qcg-connect J1363865127610__1345/task
|
Note |
---|
Podłączenie interaktywnej sesji do zadania możliwe jest tylko, gdy zdanie jest wykonywane (stan RUNNING). |
Wyświetlenie szczegółowej informacji o danym zadaniu, lub zbiorze zadań.
Code Block |
---|
Display information about task(s)
usage: qcg-info [-d] [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
usage: qcg-client task_info [-d] [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
Options:
-d,--description display user's job description
-h,--help display help message
-v,--version display version
Arguments:
JOBID identifier of the job
TASKID optional identifier of the task
The default identifier of task is 'task'
|
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku identyfikatora przyjmowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Opcjonalny przełącznik -d/--description definiuje czy ma być wyświetlony opis z jakim zlecone zostało zadnie. Domyślnie opis nie jest wyświetlany.
Polecenie qcg-interactive zastąpione zostało przez qcg-sub wywołane z przełącznikiem -I.
Code Block |
---|
qcg-sub -I interactive.qcg |
Wyświetlenie listy zadań wraz z informacjami o nich.
Code Block |
---|
Display information about tasks
usage: qcg-list [-C <period>] [-c] [-F <format>] [-h] [-n <NOTE>] [-N] [-p <PURGED>] [-R] [-S
<period>] [-s <status(es)>] [-T <format>] [-t] [-v]
usage: qcg-client get_tasks [-C <period>] [-c] [-F <format>] [-h] [-n <NOTE>] [-N] [-p <PURGED>]
[-R] [-S <period>] [-s <status(es)>] [-T <format>] [-t] [-v]
Options:
-C,--changed <period> changed in the period of time
-c,--color Colorize output
-F,--format <format> columns format
-h,--help display help message
-n,--note <NOTE> list elements with the given note
-N,--no-list do not display list
-p,--purged <PURGED> display whether the working directory is purged or not
(PURGED=true|false).
-R,--report display summary report.
-S,--submitted <period> submited in the period of time. If the status is defined the default
value of the period is 1 day.
-s,--status <status(es)> status(es) of the job. Lack of this option is equivalent to requesting
unterminated activities.
-T,--time <format> time format
-t,--truncated display truncated identifiers
-v,--version display version
|
Polecenie wyświetla listę zadań użytkownika.
Opcja -C/--changed - pozwala określić, że wyświetlone mają być zdania, których status zmienił się w zadanym okresie czasu. W ciągu ostatnich „liczba” dni („d”), godzin („h”), minut („m”).
Opcja -c/–color - koloruje zadania zgodnie z ich stanami.
Opcja -F/–format - umożliwia podanie własnego formatu wyświetlanej linia.
Opcja -n/--note - pozwala zawęzić listę zadań do tych posiadających określony opis (note). Możliwe jest podanie wyrażenia zawierającego % oznaczający dowolny ciąg znaków (np. "eksperyment nr %").
Opcja -N/--no-list - powoduje pominięcie wyświetlania listy zadań. Stosowane w połączeniu z opcją -R do wyświetlania tylko statystyk.
Opcja -p/--purged - określa czy wyświetlone mają być zadania, których katalog roboczy został usunięty czy nie.
Opcja -R/--report - powoduje wyświetlenie statystyki zadań.
Opcja -S/--submitted - pozwala określić, że wyświetlone mają być zdania zlecone w zadanym okresie czasu. W ciągu ostatnich „liczba” dni („d”), godzin („h”), minut („m”).
Opcja -s/--status - pozwala zawęzić listę wyświetlanych zadań do zadań w danym stanie. Możliwe jest podanie wielu stanów rozdzielonych przecinkiem.
Opcja -T/--time - definiuje format wyświetlanej daty.
Opcja -t/--truncated - wyświetla listę "przyciętych" identyfikatorów
Statusy zadań:
Dla wygody użytkowników zamiast listy stanów możliwe jest podanie zdefiniowanych stałych:
Przełącznik -R włacza wyświetlenie reportu przedstawiającego liczbę zadań w każdym stanie.
Code Block |
---|
qcg-list
qcg-list -S 1d
qcg-list -s failed
qcg-list -S 1d -s all -R |
Format wyświetlania dat
Użytkownik może zdefiniować przy wywołaniu polecenia lub w pliku konfiguracyjnym własny format wyświetlania dat.
H - godzina (00-23)
k - godzina (0-23)
M - minuty (00-59)
S - sekundy (00-59)
Domyślny format: "dd.MM.yy HH:mm"
Format wyświetlania kolumn:
Użytkownik może zdefiniować własny format wyświetlanych linii podając ciąg tekstowy definiujący ten format poprzez opcję polecenia lub plik konfiguracyjny).
W formacie użytkownik podaje kolumny, ich rozmiary i sposób wyrównywania wg następującego schematu:
Code Block |
---|
%[-]<WIDTH><COLUMN_ID> [ %[-]<WIDTH><COLUMN_ID> ] ... |
gdzie:
Domyślny format: "%-22I %-20N %-15T %-15X %-15E %-16S %-8H %-5F %-20D"
Wyświetlane kolumny:
Kolumna | Identyfikator | Znaczenie |
---|---|---|
JOB IDENTIFIER | I | Identyfikator zadania |
NOTE | N | Opis zadania (wartość dyrektywy #QCG note) |
SUBMISSION TIME | T | Czas zlecenia zadania |
START TIME | X | Czas rozpoczęcia zadania |
FINISH TIME | E | Czas zakończenia zadania |
STATUS | S | Status zadania |
HOSTNAME | H | Nazwa klastra/klastrów, na którym/których wykonuje się zadanie |
FLAGS | F | Flagi zadania: S - opis QCG-Simple X - opis QCG-JobProfile (XML) J - opis JSDL P - purged (usunięty katalog roboczy) UP - unpurged (nieusunięty katalog roboczy) |
STATUS DESCRIPTION | D | Opis stanu (dodatkowy opis dla stanu FAILED) |
Przykładowe wywołanie.
Code Block |
---|
qcg-list -F "%-22I %-20N %-15T %-15X %-15E %-16S %-8H %-5F %-20D" -T "dd.MM.yy HH:mm" |
Podgląd plku wyjściowego zadania.
Code Block |
---|
Peek the output file(s)
usage: qcg-peek [-c <NUMBER>] [-f <FILE>] [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
usage: qcg-client peek_output [-c <NUMBER>] [-f <FILE>] [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ...
Options:
-c,--characters <NUMBER> number of characters
-f,--file <FILE> |
Code Block |
#QCG note=NAMD apoa1 #QCG name=ex_1 file to peek -h,--help display help message -v,--version #QCG host=hydra.icm.edu.pl display version Arguments: JOBID identifier of the job TASKID optional identifier of #QCG walltime=PT10Mthe task The default identifier of task #QCG queue=plgrid is 'task' |
Polecenie umożliwią podgląd pliku wyjściowego dla zadania, lub sbioru zadań.
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku identyfikatora przyjmowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Opcjonalny przełącznik -f/--file definiuje plik do podejrzenia. Lokalizacja brana jest względem katalogu roboczego zadania. Domyślnie polecenie pozwala wyświetlić zawartość stdout i stderr.
Opcjonalny przełącznik -c/--characters pozwala określić liczbę znaków jaka ma być wyświetlona.
Code Block |
---|
qcg-peek J1363865127610__1345
qcg-peek -f output.txt J1363865127610__1345
qcg-peek -f output.txt -c 1000 J1363865127610__1345 |
Utworzenie certyfikatu proxy użytkownika.
Code Block |
---|
Create user proxy usage: proxy_init [-h] [-v] Options: -h,--help display help message -v,--version display version |
Ponowne pobrani plików wyjściowych aplikacji
Code Block |
---|
Refetch output files usage: qcg-refetch [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ... usage: qcg-client stage_out [-h] [-v] JOBID[/TASKID] [JOBID[/TASKID]] ... Options: -h,--help #QCG nodes=1:12:12 display help message -v,--version display version Arguments: JOBID identifier of the job TASKID optional identifier of #QCG persistentthe task The default identifier of task #QCG output=apoa1.output is 'task' |
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku indentyfikatora przyjnowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Code Block |
---|
qcg-refetch J1363865127610__1345
qcg-refetch J1363865127610__1345/task
|
Odświeżenie certyfikatu proxy danego zadnia.
Z każdym zleconym zadaniem związany jest certyfikat proxy użytkowniaka przekazywany do systemu w momencie zlecenia zadania. Każdy taki certyfikat proxy ma określony czas ważności.
W przypadku utraty ważności certyfikatu proxy danego zadania system nie będzie w stanie automatcznie dokonać transferu plików wyjściowych. Niemożliwe też będzie podłączenie się do zadania przy pomocy polecenia qcg-connect.
Czas ważności ceryfikatu danego zadania wyświetlany jest przez polecenia qcg-info.
Code Block |
---|
Refresh proxy for the given job(s) usage: qcg-client refresh_proxy [-h] [-v] JOBID [JOBID] ... Options: -h,--help display help message #QCG error=apoa1.error -v,--version display version Arguments: JOBID identifier of the job |
Polecenie wyświętlające informacje o zasobach dostępnych poprzez infrastrukturę QCG
Code Block |
---|
plgpiontek@client:~$ qcg-resources -h #QCG application=NAMD #QCG argument=apoa1/apoa1.namd #QCG stage-in-file=apoa1.zip Privides information about controlled resources #QCG preprocess=unzip apoa1.zip #QCG stage-out-dir=. -> results usage: qcg-client resources [-a <show_hidden>] [-h] [-m] [-n <PROPERTIES>] [-Q] [-q] [-R <RESOURCES>] [-s] [-u] [-V] [-v] Options: -a,--applications <show_hidden> print information about applications -h,--help display help message -m,--modules print information about modules -n,--nodes <PROPERTIES> print information about nodes -Q,--quiet quiet mode -q,--queues print information about queues -R,--resources <RESOURCES> List of comma separated names of resources -s,--summary print summary information about the resource -u,--users print information about users -V,--version display version -v,--vos print information about vos |
Ponowne zlecenie zadania do wykonania na infrastrukturze QCG na podstawie opisu innego wcześniej zleconego zadania. Zdanie do ponownego zlecenia określane jest poprzez podanie jego identyfikatora.
Code Block |
---|
Resubmit job(s)
usage: qcg-client resubmit_job [-h] [-v] JOBID [JOBID] ...
usage: qcg-resub [-h] [-v] JOBID [JOBID] ...
Options:
-h,--help display help message
-v,--version display version
Arguments:
JOBID identifier of the job
|
Zlecenie zadania do wykonania na infrastrukturze QCG zgodnie z podanym opisem.
Info |
---|
Rekomendowanym formatem opisu zadania jest format QCG-Simple. |
Code Block |
---|
Submit job(s) to the QCG infrastructure
usage: qcg-sub [-D <DIRECTIVE>] [-h] [-I] [-J | -S | -X] [-R <NUMBER>] [-v] FILE [FILE] ...
usage: qcg-client submit_job [-D <DIRECTIVE>] [-h] [-I] [-J | -S | -X] [-R <NUMBER>] [-v] FILE [FILE] ...
Options:
-D,--directive <DIRECTIVE> adds #QCG directives to the description
-h,--help display help message
-I,--interactive Interactive mode
-J,--jsdl JSDL dialect
-R,--repeat <NUMBER> repeat submission (only for testing)
-S,--simple QCG Simple dialect
-v,--version display version
-X,--xml QCG XML dialect |
Jako argumenty polecenie przyjmuje listę scieżek do plików zawierających opisy zadań.
qsg-sub akceptuje zadania opisane w jednym z nastepująch formatów: QCG-Simple (-S/--simple), QCG-JobProfile (-X/--xml) oraz JSDL (-J/--jsdl). Domyślnym formatem jest QCG-Simple (-S/--simple).
Zlecenie zadania interaktywnego wymaga podania przełącznika -I. W przypadku zlecenia zadania interaktywnego mozliwe jest podanie tylko jednego opisu zadania.
Przełącznik -R/--repeat umożliwia n-krotne zlecenie tego samego zadania. Każde zadanie ma ustawianą zmienną środowiskową QCG_TASK_INDEX kolejną wartość od 0 do n-1.
Przełącznik -D/--directive pozwala na definiowanie dyrektyw (oddzielonych znakiem średnika) poza plikiem opisu zadania. Przydatne jest to, gdy np. chcemy zlecać jeden opis zadania modyfikując pewne dyrektywy. W takim przypadku opcja -D pozwala na uniknięcie konieczności modyfikowania pliku przed każdym zleceniem.
Code Block |
---|
qcg-sub experiment.qcg
qcg-sub -S file1.qcg file2.qcg file3.qcg
qcg-sub -D "host=bem;walltime=PT10M" cfd.qcg |
WAŻNE: Korzystając z polecenia qcg-sub można zlecić wykonanie dowolnej interaktywnej tekstowej aplikacji. Służy do tego przełącznik -I/--interactive.
Szczególnie częstym i użytecznym przypadkiem jest interaktywne uruchomienie konsoli poleceń umożliwiające np. kompilację oprogramowani na klastrze, do którego nie ma dostępu poprzez SSH.
W opisie zadania dla interaktywnego uruchomienia konsoli poleceń wystarczy podać nazwę klastra, na którym ma sie uruchomić konsola oraz podać scieżkę do preferowanego interpretera poleceń (np. bash).
Code Block |
---|
#QCG host=inula.man.poznan.pl
/bin/bash |
W opisie zadania interaktywnego można korzystać również z innych dyrektyw QCG celem podania np. wymagań zasobowych dla zadania interaktywnego.
Code Block |
---|
qcg-sub -I interactive.qcg
|
Możliwe jest pominięcie dyrektywy #QCG host w opisie zadania i podanie jej jako argument polecenia qcg-sub
Code Block |
---|
qcg-sub -I -D "host=inula" interactive.qcg
|
Anulowanie rezerwacji zasobów.
Code Block |
---|
Cancel reservation(s)
usage: qcg-rcancel [-h] [-v] RESID [RESID] ...
usage: qcg-client cancel_reservation [-h] [-v] RESID [RESID] ...
Options:
-h,--help display help message
-v,--version display version
Arguments:
RESID identifier of the reservation |
Argumentem polecenia jest lista identyfikatorów rezerwacji.
Code Block |
---|
qcg-rcancel R1363180788689_RESERVATION_0172
qcg-rcancel R1363180788689_RESERVATION_0172 R1363252044299__9086 |
Rezerwacja zasobów zgodnie z podanym opisem.
Info |
---|
Rekomendowanym formatem opisu zadania jest format QCG-Simple. Dyrektywy QCG związane z rezerwacją zasobów: deadline, host, not-after, not-before, walltime, use-reservation, reservation, procs. |
Code Block |
---|
Create reservation(s)
usage: qcg-reserve [-h] [-J | -S | -X] [-v] FILE [FILE] ...
usage: qcg-client create_reservation [-h] [-J | -S | -X] [-v] FILE [FILE] ...
Options:
-h,--help display help message
-J,--jsdl JSDL dialect
-S,--simple QCG Simple dialect
-v,--version display version
-X,--xml QCG XML dialect
Arguments:
FILE Path to file with job description |
Jako argumenty polecenie przyjmuje listę scieżek do plików zawierających opisy zadań.
qsg-reserve akceptuje zadania opisane w jednym z nastepująch formatów: QCG-Simple (-S/--simple), QCG-JobProfile (-X/--xml) oraz JSDL (-J/--jsdl). Domyślnym formatem jest QCG-Simple (-S/--simple).
Code Block |
---|
qcg-reserve experiment.qcg
qcg-reserve -S file1.qcg file2.qcg file3.qcg |
Wyświetlenie szczegółowej informacji o danej rezerwacji, lub zbiorze rezerwacji.
Code Block |
---|
Display information about the given reservation(s)
usage: qcg-rinfo [-d] [-D] [-h] [-v] RESID [RESID] ...
usage: qcg-client reservation_info [-d] [-D] [-h] [-v] RESID [RESID] ...
Options:
-d,--description display user's job description
-D,--qcg_description display QCG job description
-h,--help display help message
-v,--version display version
Arguments:
RESID identifier of the reservation |
Lista zadań podawana jest w formacie JOBID[/TASKID], gdzie JOBID to identyfikator eksperymentu zwrócony przez polecenia qcg-sub, TASKID to opcjonalny identyfikator zadania w ramach eksperymentu. W przypadku braku indentyfikatora przyjnowany jest domyślny - "task".
Zadania opisane przy pomocy formatu QCG-Simple nie wymagają podawania identyfikatora zadania, wystarczy tylko JOBID.
Opcjonalny przełącznik -d/--description definiuje czy ma być wyświetlony opis z jakim zlecone zostało zadnie. Domyślnie opis nie jest wyświetlany.
Przełącznik -D/--qcg_description definiuje czy ma być wyświetlony opis w formacie QCG JobProfile.
Wyświetlenie listy rezerwacji wraz z informacjami o nich.
Code Block |
---|
Display information about reservations
usage: qcg-rlist [-C <period>] [-c] [-F <format>] [-h] [-n <NOTE>] [-N] [-R] [-S <period>] [-s <status(es)>] [-T <format>] [-t] [-v]
usage: qcg-client get_reservations [-C <period>] [-c] [-F <format>] [-h] [-n <NOTE>] [-N] [-R] [-S <period>] [-s <status(es)>] [-T <format>] [-t] [-v]
Options:
-C,--changed <period> changed in the period of time
-c,--color Colorize output
-F,--format <format> columns format
-h,--help display help message
-n,--note <NOTE> list elements with the given note
-N,--no-list do not display list
-R,--report display summary report.
-S,--submitted <period> submited in the period of time. If the status is defined the default value of the period is 1 day.
-s,--status <status(es)> status(es) of the job. Lack of this option is equivalent to requesting unterminated activities.
-T,--time <format> time format
-t,--truncated display truncated identifiers
-v,--version display version |
Polecenie wyświetla listę rezerwacji użytkownika.
Opcja -C/--changed - pozwala określić, że wyświetlone mają być rezerwacje, których status zmienił się w zadanym okresie czasu. W ciągu ostatnich „liczba” dni („d”), godzin („h”), minut („m”).
Opcja -c/–color - koloruje linie zgodnie ze stanem rezerwacji
Opcja -F/–format - własny format wyświetlania lini
Opcja -n/--note - pozwala zawęzić listę rezerwacji do tych posiadających określony opis (note). Możliwe jest podanie wyrażenia zawierającego % oznaczający dowolny ciąg znaków (np. "eksperyment nr %").
Opcja -N/--no-list - powoduje pominięcie wyświetlania listy rezerwacji. Stosowane w połączeniu z opcją -R do wyświetlania tylko statystyki.
Opcja -R/--report - powoduje wyświetlenie statystyki rezerwacji.
Opcja -S/--submitted - pozwala określić, że wyświetlone mają być rezerwacje zlecone w zadanym okresie czasu. W ciągu ostatnich „liczba” dni („d”), godzin („h”), minut („m”).
Opcja -s/--status - pozwala zawęzić listę wyświetlanych rezerwacji do tych w danym stanie. Możliwe jest podanie wielu stanów rozdzielonych przecinkiem.
Opcja -T/--time - format wyświetlanego czasu
Opcja -t/--truncated - wyświetlenie listy "przyciętych" identyfikatorów.
Statusy rezerwacji:
Dla wygody użytkowników zamiast listy stanów możliwe jest podanie zdefiniowanych stałych:
Przełącznik -R włacza wyświetlenie reportu przedstawiającego liczbę rezerwacji w każdym stanie.
Code Block |
---|
qcg-rlist
qcg-rlist -S 1d
qcg-rlist -s failed
qcg-rlist -S 1d -s all -R |
Format wyświetlania dat
Użytkownik może zdefiniować przy wywołaniu polecenia lub w pliku konfiguracyjnym własny format wyświetlania dat.
H - godzina (00-23)
k - godzina (0-23)
M - minuty (00-59)
S - sekundy (00-59)
Domyślny format: "dd.MM.yy HH:mm"
Format wyświetlania kolumn:
Użytkownik może zdefiniować własny format wyświetlanych linii podając ciąg tekstowy definiujący ten format poprzez opcję polecenia lub plik konfiguracyjny).
W formacie użytkownik podaje kolumny, ich rozmiary i sposób wyrównywania wg następującego schematu:
Code Block |
---|
%[-]<WIDTH><COLUMN_ID> [ %[-]<WIDTH><COLUMN_ID> ] ... |
gdzie:
Domyślny format: ""%-22I %-20N %-15T %-15X %-15E %-16S %-8H %-5C %-20D""
Wyświetlane kolumny:
Kolumna | Identyfikator | Znaczenie |
---|---|---|
JOB IDENTIFIER | I | Identyfikator zadania |
NOTE | N | Opis zadania (wartość dyrektywy #QCG note) |
SUBMISSION TIME | T | Czas zlecenia zadania |
START TIME | X | Czas rozpoczęcia zadania |
FINISH TIME | E | Czas zakończenia zadania |
STATUS | S | Status zadania |
HOSTNAME | H | Nazwa klastra/klastrów, na którym/których wykonuje się zadanie |
SLOTS | C | Liczba zarezerwowanych rdzeni |
STATUS DESCRIPTION | D | Opis stanu (dodatkowy opis dla stanu FAILED) |
Przykładowe wywołanie.
Code Block |
---|
qcg-list -F "%-22I %-20N %-15T %-15X %-15E %-16S %-8H %-5F %-20D" #QCG notify=xmpp:tomasz.piontek@plgrid.pl #QCG watch-output=mailto:tp@mail,20,ENERGY |
...
-T "dd.MM.yy HH:mm" |