Versions Compared

Key

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

...

...

  • assistant - dyrektywa umożliwiająca uruchomienie równolegle z podstawowym programem polecenia lub skryptu pomocniczego. Skrypt ten zakończony zostanie automatycznie z końcem zadnia.

    Warning

    Dyrektywa wprowadzona została w wersji 3.4 i zastąpiła dyrektywę #QCG monitor, która zmieniła znaczenie.

    Składnia:

    Code Block
    #QCG assistant=skrypt,delay->N
    #QCG assistant=script->skrypt,delay->N

    Parametry:

    • script - obligatoryjny, domyślny parametr definiujący

      polecenie lub

      skrypt, który ma być uruchomiony. W przypadku korzystania ze skryptu musi być on przegrany dyrektywą #QCG stage-in-file

      .

      delay - opconoalny parametr definiujący okres czasu w sekundach pomiędzy kolejnymi wywołaniami.

    Code Block
    #QCG assistant=rm *.temp,delay->60
    
    #QCG assistant=script->skrypt.sh,delay->60
    #QCG stage-in-file=script.sh

deadline

  • Note

    WAŻNE: Skrypt uruchamiany jest jednokrotnie na początku zadania. Jeżeli akcja zdefiniowana wewnątrz skryptu ma być wywoływana cyklicznie użytkownik jest odpowiedzialny za implementacje takiej funkcjonalności.

deadline

  • deadline deadline - dyrektywa umożliwiająca zdefiniowanie, że zadanie lub rezerwacja 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.

...

  • output - lokalizacja gdzie ma być przegrane standardowe wyjście zadnia (stdout). Jeśli nie jest to lokalizacja zdalna (gsiftp/irods) zakłada się, że jest ustalana względem katalogu, z którego zlecono zadanie.

...

  • 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

parameter-sweep

  • parameter-sweep -dyrektywa umożliwiająca zdefiniowanie przestrzeni parametrów dla zadania. Dyrektywa może być użyta wielokrotnie definiując wielowymiarową przestrzeń parametrów. Dla każdego zestawu parametrów uruchamiane jest osobne zadanie. Dyrektywa skład się z nazwy zmiennej, która będzie przyjmować kolejne wartości oraz z definicji zmienności parametru.

    Code Block
    #QCG parameter-sweep=VAR->PARAMETER_SPACE
  • Dyrektywa dopuszcza następujące sposoby definiowania zmienności parametru:

  • list - wartości podane są jako lista oddzielona przecinkami

    Code Block
    #QCG parameter-sweep=var->list:mon,tue,wed,thu,fri,sat,sun
    #QCG parameter-sweep=var->list:1,2,3,4,5,6
  • for - wartość wyznaczane są od wartości początkowej (start) do końcowej (end) z opcjonalnie definiowalnym krokiem (step) (domyślnie 1). Liczba miejsc po przecinku wyznaczana jest jako największa liczba cyfr po przecinku dla parametrów start, end, step.

    Code Block
    #QCG parameter-sweep=var->for:start..end
    #QCG parameter-sweep=var->for:start..end..step
    
    #QCG parameter-sweep=var->for:0..10
    #QCG parameter-sweep=var->for:0..10..2
    #QCG parameter-sweep=var->for:1.0..2.0..0.5
  • pattern - kolejne wartości przyjmują nazwy plików zgodnych z podanym wzorcem wyszukiwanych względem katalogu, z którego zlecono zadanie.

    Code Block
    #QCG parameter-sweep=var->pattern->*.input
  • file - kolejnymi wartościami są kolejne linie pobierane z pliku

    Code Block
    #QCG parameter-sweep=var->file:file_with_values.txt

persistent

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

    Warning

    Dyrektywa ta powinna być używana tylko na etapie testowania. Przy normalnym trybie wykonywania aplikacji dyrektywa ta nie powinna być ustawiona, gdyż powoduje, że katalog roboczy zadania nie jest usuwany i zajmuje miejsce na zasobach.

    Zadania zlecone jako "persistent" mogą być po zakończeniu "wyczyszczone" poleceniem qcg-clean.

...

Code Block
#QCG watch-output=consumer->konsument,[regexppattern->wyrazenie | script->skrypt ,delay->N]
#QCG watch-output=konsument

...

  • consumer - obligatoryjny, domyślny parametr określający odbiorcę powiadomienia. (wspieranymi protokołami są mail i xmpp - patrz dyrektywa notify)
  • regexp pattern lub script - parametry definiujące albo poszukiwane w pliku wyjściowym wyrażenie regularne lub własny skrypt monitorujący (skrypt powłoki bash). W obu przypadkach wynik (output) przesyłany jest na wskazany adres. W przypadku korzystania ze skryptu monitorującego należy w zadaniu zdefiniować dyrektywę (#QCG stage-in-file) kopiującą plik.
  • delay - okres pomiędzy kolejnymi uruchomieniami procedury monitoringu (w sekundach). Wiadomość wysyłana jest tylko w przypadku stwierdzenia zajścia zmiany od poprzedniego wysłania.

Code Block
#QCG watch-output=mailto:piontek@man.poznan.pl,regexppattern->ENERGY,dalay->60

#QCG watch-output=consumer->mailto:piontek@man.poznan.pl,script->skrypt_monitorujacy.sh,dalay->60
#QCG stage-in-file=skrypt_monitorujacy.sh

...