Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section


Column


Column


QCG-SimpleClient oferuje prosty, wzorowany na poleceniech poleceniach systemu kolejkowego, interfejs do infrastruktury QCG.


Table of Contents
maxLevel3
classmenu-right

Polecenia

  • Zlecanie i kontrolowanie zadań
    • qcg-cancel - anulowanie zadania
    • qcg-clean - usunięcie katalogu roboczego zadnia
    • qcg-connect - interaktywne "podłączenie" się do działającego zadania
    • qcg-info - wyświetlenie szczegółowej informacji o danym zadaniu
    • qcg-interactive - zlecenie zadania interaktywnego (zastąpione przez qcg-sub -I)
    • qcg-list - wyświetlenie listy zleconych zadań wraz z informacjami o nich
    • qcg-peek - podgląd wyjścia (stdout, stderr) aplikacji
    • qcg-proxy - utworzenie certyfikatu proxy użytkownika
    • qcg-
  • rcancel - anulowanie rezerwacjiqcg-
  • ponowne skopiowanie plików wynikowych
    • ponowienie pobierania wyjściowych plików i katalogów zadania
    • qcg-
  • reserve - rezerwacja zasobów
  • rinfo - wyświetlenie szczegółowej informacji o rezerwacji
  • rlist - wyświetlenie listy rezerwacji wraz z informacjami o nich
    • resources - informacja o zasobach dostępnych poprzez infrastrukturę QCG
    • qcg-sub - zlecenie zadania do wykonania na infrastrukturze QCG zgodnie z uproszczonym opisem

...

  • Rezerwowanie zasobów i kontrola rezerwacji

...

  • 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

qcg-list czas_jednostka [stan,[stan]]

...

    • rcancel - anulowanie rezerwacji
    • qcg-reserve - rezerwacja zasobów
    • qcg-rinfo - wyświetlenie szczegółowej informacji o rezerwacji
    • qcg-rlist - wyświetlenie listy rezerwacji wraz z informacjami o nich

...

Składnia poleceń

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:

  • all - zadania we wszystkich stanach,
  • terminated - zadania zakończone,
  • unterminated - zadania niezakończone.
Code Block
  qcg-list 7d all
  qcg-list 7d terminated
  qcg-list 7d unterminated

 

qcg-info

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

 

qcg-peek

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

qcg-proxy

Utworzenie certyfikatu proxy użytkownika.

Code Block
qcg-proxy

 

qcg-cancel

qcg-cancel jobId

Anulowanie zadania.
jobId - identyfikator eksperymentu

Code Block
  qcg-cancel J1331196390748_date_3099

 

qcg-clean

qcg-clean jobId

Usunięcie katalogu roboczego zadnia.
jobId - identyfikator eksperymentu

Code Block
  qcg-clean J1331196390748_date_3099

 

qcg-interactive

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-connect

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

qcg-refetch jobId

Ponowne skopiowanie plików wynikowych zadania.
jobId - identyfikator eksperymentu

Code Block
  qcg-refetch J1331196390748_date_3099

 

Format opisu zadań

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 ”executable” ani ”application” uruchamiany jest zlecany plik z opisem zadania.

application

  • application - nazwa aplikacji do uruchomienia.
Code Block
#QCG application=namd

argument

  • argument - argument aplikacji w przypadku użycia dyrektywy „executable” lub „application”. Argument może wystąpić wielokrotnie. Każdy argument powinien być przekazany w osobnej dyrektywie. Argumenty do aplikacji przekazywane są w kolejności ich wystąpienia w pliku opisu
Code Block
#QCG argument=arg1
#QCG argument=arg2

deadline

  • deadline - dyrektywa umożliwiająca zdefiniowanie, że zadanie ma być wykonane „w czasie nie dłuższym niż”. Dyrektywa wymusza użycie mechanizmu rezerwacji zasobów z wyprzedzeniem. Nie może być użyta równocześnie z dyrektywą „reservation”. Argumentem dyrektywy jest przedział czasu w formacie PnYnMnDTnHnMnS (ISO 8601) gdzie:
    • P - obowiązkowy znak rozpoczynający definicję okresu,
    • nY - liczba lat,
    • nM - liczba miesięcy,
    • nD - liczba dni,
    • T - separator czasu (musi być obecny, jeśli zdefiniowane są poniższe wartości)
    • nH - liczba godzin,
    • nM - liczba minut,
    • nS - liczba sekund.

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

environment

  • environment - ustawianie zmiennych środowiskowych. Składnia „nazwa → wartość”. Każda zmienna musli być ustawiana w osobnej linii.
Code Block
#QCG environment=name -> piontek
#QCG environment=location -> poznan

error

  • 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
    

executable

  • executable - lokalizacja pliku do uruchomienia. Lokalizacja może być lokalizacją gsiftp lub ścieżką do pliku. W tym drugim przypadku przyjmuje się, że jest ustalana względem katalogu, z którego zlecone zostało zadanie. Opcjonalnie możliwe jest podanie nazwy pod jaką ma być zapisany plik wykonywalny. W przypadku braku nazwy zapisywany jest pod oryginalna nazwą. 
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

grant

  • grant - nazwa grantu, w ramach którego ma być wykonane zadanie.
Code Block
#QCG grant=plgpiontek_grant

host

  • host - nazwa maszyny na której może być uruchomione zadanie. Może być wiele takich dyrektyw dla alternatywnych maszyn.
Code Block
#QCG host=reef.man.poznan.pl
#QCG host=zeus.cyfronet.pl

input

  • input - lokalizacja skąd ma być wzięte standardowe wejście dla aplikacji (stdin). Jeśli nie jest to lokalizacja gsiftp zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie.
Code Block
#QCG input=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/experiment.input
#QCG input=input.txt

memory

  • memory - dyrektywa definiująca deklarowane maksymalne zapotrzebowanie aplikacji na pamięć operacyjną. Podana wartość jest w MB.
Code Block
#QCG memory=1024

module

  • module - dyrektywa umożliwiająca zdefiniowanie wymaganego przez zadanie modułu (nazwy programu/biblioteki oraz wersji). Możliwe jest wielokrotne podanie dyrektywy. Przy wyborze klastra do uruchomienia zadania system weźmie pod uwagę tylko te klastry na których dostępne są wszystkie wymagane moduły.
Code Block
#QCG module=nwchem/6.0
#QCG module=namd

monitor

  • monitor - dyrektywa umożliwiająca zdefiniowanie skryptu, który zostanie uruchomiony przed uruchomieniem właściwego zadania i zabity po zakończeniu zadania. Funkcjonalność ta umożliwia w prosty sposób zaimplementowanie monitoringu aplikacji. Uruchomiony skrypt może cyklicznie wyszukiwać w wyniku aplikacji zadanych wzorców i przesyłać je w dowony sposób do użytkownika.
Code Block
#QCG monitor=monitor-script.sh

name

  • name - dyrektywa określająca nazwę zadania. Nazwa zadania pojawi się jako końcówka identyfikatora zadania.
Code Block
#QCG name=nobel-experiment

native

  • native - dyrektywa umożliwiająca przekazanie do systemu kolejkowego specyficznych dla niego wymagań zasobowych. Wymagania takie są specyficzne do systemu kolejkowego i powinny być używane z dyrektywami „host” i w przemyślany przez użytkownika sposób.

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

nodes

  • nodes - dyrektywa pozwalająca zdefiniować na ilu węzłach i rdzeniach w ramach węzła ma być uruchomione zadanie. Opcjonalnie można podać ile procesów ma być uruchomione na węzłach. Domyślnie, jeżeli nie zostanie podane inaczej, liczna procesów równa jest liczbie rdzeni przydzielonych w ramach węzła. Składnia liczna_węzłów:liczba_rdzeni_na_węźleliczba_procesów.
Code Block
#QCG nodes=10:5:1
#QCG nodes=12:12

not-after

  • not-after - dyrektywa umożliwiająca zdefiniowanie, że zadanie ma być wykonane „nie później niż”. Argumentem dyrektywy jest data z opcjonalnym czasem. Dyrektywa wymusza użycie mechanizmu rezerwacji zasobów z wyprzedzeniem. Nie może być użyta równocześnie z dyrektywą „reservation”, wymaga podania dyrektywy „walltime”.
Code Block
#QCG not-after=2012.08.25
#QCG walltime=PT2H
Code Block
#QCG not-after=2012.08.25 13:20
#QCG walltime=PT2H

not-before

  • not-before - dyrektywa umożliwiająca zdefiniowanie, że zadanie ma być wykonane „nie wcześniej niż”. Argumentem dyrektywy jest data z opcjonalnym czasem. Dyrektywa wymusza użycie mechanizmu rezerwacji zasobów z wyprzedzeniem. Nie może być użyta równocześnie z dyrektywą „reservation”. W przypadku braku dyrektywy przyjmuje się, że zadanie może być uruchomione „od razu”. Dyrektywa wymaga dyrektywy „walltime”.
Code Block
#QCG not-before=2012.07.25
#QCG walltime=PT2H
Code Block
#QCG not-before=2012.07.25 15:20
#QCG walltime=PT2H

note

  • note - krótka informacja o zadaniu.
Code Block
#QCG note=moje pierwsze zadanie QCG

notify

  • notify - dyrektywa umożliwiająca podanie protokołu i adresu docelowego dla powiadomień o stanie zadania. Możliwe jest wysyłanie powiadomień mailem i xmpp (dawniej Jabber).
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    

output

  • output - lokalizacja gdzie ma być przegrane standardowe wyjście zadnia (stdout). Jeśli nie jest to lokalizacja gsiftp zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie.
Code Block
#QCG output=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/outputs/${JOB_ID}.output
#QCG output=output.txt

persistent

  • persistent - dyrektywa określająca że po zakończeniu zadania system ma pozostawić katalog roboczy, w którym wykonywane było zadanie.
Code Block
#QCG persistent

postprocess

  • postprocess - dyrektywa umożliwiająca wykonanie polecenia/skryptu po zakończeniu się właściwego zadania. Wartością dyrektywy może być polecenie lub ścieżka do pliku, który ma być wykonany.
Code Block
#QCG postprocess=tar cvf wynik.tar *
Code Block
#QCG postprocess=postprocess-script.sh

preprocess

  • preprocess - dyrektywa umożliwiająca wykonanie polecenia/skryptu przed uruchomieniem właściwego zadania. Wartością dyrektywy może być polecenie lub ścieżka do pliku, który ma być wykonany.
Code Block
#QCG preprocess=mkdir outputs
Code Block
#QCG preprocess=preprocess-script.sh

procs

  • procs - liczba rdzeni obliczeniowych, na których ma być wykonane zadanie. (Stosowane dla zadań MPI.)
Code Block
#QCG procs=32

properties

  • properties - dyrektywa definiująca właściwości węzłów na których ma być uruchomione zadanie.
Code Block
#QCG properties=mpi,ib,lustre

queue

  • queue - wybrana kolejka systemu kolejkowego.
Code Block
#QCG queue=plgrid

reservation

  • reservation - dyrektywa umożliwiająca podanie lokalnego identyfikatora rezerwacji w ramach której ma być wykonane zadanie. Użycie tej dyrektywy wymaga jednoznacznego podania hosta na którym jest założona podana rezerwacja.
Code Block
#QCG host=reef.man.poznan.pl
#QCG reservation=piontek.0

stage-in-dir

  • stage-in-dir - dyrektywa kopiowania katalogu wejściowego. Funkcjonalność i składnia analogiczna jak dla dyrektywy „stage-in-file” tyle, że kopiowany jest katalog.
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

stage-in-file

  • 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 zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie.

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

stage-out-dir

  • stage-out-dir - dyrektywa kopiowania katalogu wyjściowego. Funkcjonalność i składnia analogiczna jak dla dyrektywy „stage-out-file” tyle, że kopiowany jest katalog.
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

stage-out-file

  • 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 zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie. W przypadku braku drugiego parametry plik przegrywany jest pod nazwę źródłową.
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

use-reservation

  • use-reservation - bezparametrowa dyrektywa umożliwiająca zdefiniowanie, ze dane zadanie ma być uruchomione z wykorzystaniem mechanizmu rezerwacji zasobów z wyprzedzeniem. Dyrektywa wymaga podania czasu wykonania zadania (dyrektywa #QCG walltime). Stosowanie tej dyrektywy pozwala „wymusić” rezerwacje, gdy nie były użyte dyrektywy „not-after”, „not-before”, „deadaline”. Dyrektywa wyklucza użycie równocześnie z dyrektywą „reservation”.
Code Block
#QCG use-reservation
#QCG walltime=PT2H

walltime

  • walltime - dyrektywa definiująca deklarowany przez użytkownika czas wykonania zadania w formacie PnYnMnDTnHnMnS, w formacie ISO 8601 gdzie:
    • P - obowiązkowy znak rozpoczynający definicję okresu,
    • nY - liczba lat,
    • nM - liczba miesięcy,
    • nD - liczba dni,
    • T - separator czasu (musi być obecny, jeśli zdefiniowane są poniższe wartości)
    • nH - liczba godzin,
    • nM - liczba minut,
    • nS - liczba sekund.
Code Block
#QCG walltime=P3DT12H

watch-output

  • watch-output - dyrektywa umożliwiająca monitorowanie pliku wyjściowego aplikacji i przesyłanie powiadomień z informacją. Argumentem dyrektywy jest trójka parametrów oddzielonych przecinkami:
    • adres na który ma być przesłane powiadomienie (wspieranymi protokołami są mail i xmpp - patrz dyrektywa notify)
    • częstotliwość przesyłania powiadomień w sekundach,
    • wyrażenie regularne, dla którego linia pliku wynikowego ma być przesłana w powiadomieniu, lub nazwa pliku którego wyjście ma być przesłane.
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

 

Zmienne opisu zadania

W opisie zadania możliwe jest użycie następujących zmiennych:

  • HOSTNAME - nazwa hosta (klastra) na jakim uruchomione zostało zadanie,
  • HOME - katalog domowy użytkownika,
  • TASK_DIR - katalog roboczy zadania,
  • JOB_ID - identyfikator eksperymentu,
  • TASK_ID - identyfikator zadania,
  • USER_DN - DN (Distinguished Name) użytkownika (identyfikator użytkownika widoczny w certyfikacie, w formacie PEM, np. /C=PL/O=GRID/O=PSNC/CN=Tomasz Piontek)
  • PROCESS_GROUP - identyfikator grupy procesów.

 

Przykładowe opisy zadań

 

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:

  • przegraniu z katalogu, z którego wykonano polecenie qcg-sub podkatalogu inputs na klaster na docelowy klaster (reef).
  • zleceniu do wykonania na klastrze reef w kolejce plgrid polecenia /bin/tar pakującego przegrany wczesnej katalog inputs do pliku output.tgz.
  • przesłaniu pliku output.tgz do katalogu, z którego wykonano polecenie qcg-sub pod tę samą nazwę.
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

Zlecanie i kontrolowanie zadań

qcg-cancel

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

qcg-clean

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

qcg-connect

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).

qcg-info

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.

qcg-interactive

Polecenie qcg-interactive zastąpione zostało przez qcg-sub wywołane z przełącznikiem -I.

Code Block
qcg-sub -I interactive.qcg

qcg-list

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ń:

  • UNSUBMITTED – przetwarzanie zadania wstrzymane z powodu zależności kolejnościowych,
  • UNCOMMITED - zadanie oczekuje na zatwierdzenie do przetwarzania,
  • QUEUED – zadanie oczekuje w kolejce na przetwarzanie,
  • PREPROCESSING – system przygotowuje środowisko uruchomieniowe dla zadania,
  • PENDING – aplikacja w ramach danego zadania oczekuje na wykonanie w systemie kolejkowym,
  • RUNNING – aplikacja użytkownika jest wykonywana w ramach zadania,
  • STOPPED – aplikacja została zakończona, system nie rozpoczął jeszcze czynności związanych z kopiowaniem wyników i czyszczeniem środowiska wykonawczego,
  • POSTPROCESSING – system wykonuje akcje mające na calu zakończenie zadania: kopiuje pliki/katalogi wynikowe, czyści środowisko wykonawcze, etc.,
  • FINISHED – zadanie zostało zakończone,
  • FAILED – błąd przetwarzania zadania,
  • CANCELED – zadanie anulowane przez użytkownika.

Dla wygody użytkowników zamiast listy stanów możliwe jest podanie zdefiniowanych stałych:

  • all - zadania we wszystkich stanach,
  • terminated - zadania zakończone (FINISHED,FAILED,CANCELED)
  • unterminated - zadania niezakończone (UNSUBMITED,UNCOMMITED,QUEUED,PREPROCESSING,PENDING,RUNNING,STOPPED,POSTPROCESSING).

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.

  • YY - rok (4 cyfry)
  • yy - rok (2 cyfry)
  • m - miesiąc (01-12)
  • B - nazwa miesiąca
  • b - skrócona nazwa miesiąca
  • A - nazwa dnia tygodnia
  • a - skrócona nazwa dnia tygodnia
  • d - dzień (01-31)
  • e - dzień (1-31)
  • 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:

  • % - obowiązkowy znak rozpoczynający definicję kolumny
  • - opcjonalny znak "minus" określający wyrównywanie do lewej
  • WIDTH - czerokość pola w znakach. Szerszy tekst będzie przycinany do tej szerokości.
  • COLUMN_ID - identyfikator kolumny (patrz tabela poniżej).

Domyślny format: "%-22I  %-20N  %-15T  %-15X  %-15E  %-16S  %-8H  %-5F  %-20D"

 

Wyświetlane kolumny:

KolumnaIdentyfikatorZnaczenie

JOB IDENTIFIER

IIdentyfikator zadania

NOTE                

NOpis zadania (wartość dyrektywy #QCG note)

SUBMISSION TIME

TCzas zlecenia zadania

START TIME     

XCzas rozpoczęcia zadania

FINISH TIME    

ECzas zakończenia zadania

STATUS          

SStatus zadania

HOSTNAME

HNazwa 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 DESCRIPTIONDOpis 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"

qcg-peek

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

qcg-proxy

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

qcg-refetch

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

 

qcg-refresh_proxy

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

 

qcg-resources

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


qcg-resub

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

 

qcg-sub

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

Rezerwowanie zasobów i kontrola rezerwacji

qcg-rcancel

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

qcg-reserve

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

qcg-rinfo

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.

qcg-rlist

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:

  • SUBMITTED - rezerwacje zlecona do wykonania,
  • RESERVED - zasoby zarezerwowane, rezerwacja nieaktywna,
  • ACTIVE - rezerwacja aktywna,
  • FINISHED - rezerwacja zakończona,
  • FAILED - rezerwacja zakońzona niepowodzeniem,
  • CANCELED - rezerwacja anulowana.

Dla wygody użytkowników zamiast listy stanów możliwe jest podanie zdefiniowanych stałych:

  • all - rezerwacje we wszystkich stanach,
  • terminated - rezerwacje w stanach końcowych (FINISHED,FAILED,CANCELED)
  • unterminated - rezerwacje niezakończone (SUBMITTED,ACTIVE,RESERVED).

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.

  • YY - rok (4 cyfry)
  • yy - rok (2 cyfry)
  • m - miesiąc (01-12)
  • B - nazwa miesiąca
  • b - skrócona nazwa miesiąca
  • A - nazwa dnia tygodnia
  • a - skrócona nazwa dnia tygodnia
  • d - dzień (01-31)
  • e - dzień (1-31)
  • 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:

  • % - obowiązkowy znak rozpoczynający definicję kolumny
  • - opcjonalny znak "minus" określający wyrównywanie do lewej
  • WIDTH - czerokość pola w znakach. Szerszy tekst będzie przycinany do tej szerokości.
  • COLUMN_ID - identyfikator kolumny (patrz tabela poniżej).

Domyślny format: ""%-22I  %-20N  %-15T  %-15X  %-15E  %-16S  %-8H  %-5C  %-20D""

 

Wyświetlane kolumny:

KolumnaIdentyfikatorZnaczenie

JOB IDENTIFIER

IIdentyfikator zadania

NOTE                

NOpis zadania (wartość dyrektywy #QCG note)

SUBMISSION TIME

TCzas zlecenia zadania

START TIME     

XCzas rozpoczęcia zadania

FINISH TIME    

ECzas zakończenia zadania

STATUS          

SStatus zadania

HOSTNAME

HNazwa klastra/klastrów, na którym/których wykonuje się zadanie

SLOTS

CLiczba zarezerwowanych rdzeni
STATUS DESCRIPTIONDOpis 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"