</motto<
 
>>
 
 
/chapter<NQS-er{ajoj{rjestelm{>
 
/iii<NQS>
/iii<er{ajot>
</sc Unix>issa ei alunperin ole varsinaista er{ajomahdollisuutta,
mik{ supertietokoneessa on t{ysin v{ltt{m{t|n.
</sc Unicos> sis{lt{{ t{t{ varten Crayn oman laajennuksen,
</sc/ii<nqs>>-er{ajoj{rjestelm{n (Network Queueing System).
 
</sc Nqs>-ty| voidaan l{hett{{ joko suoraan supertietokoneen
ositusk{ytt|istunnosta, </sc Vms>-edustakoneelta /ii<Cray Station>
-ohjelmistolla tai </sc unix>-edusta/-ko/-neesta 
/ii<Cray Link> -ohjelmistolla.
Lis{ksi edustakoneella valmisteltu er{ty| voidaan siirt{{
</sc/ii<tcp//ip>>-palvelujen komennolla </tt/ii<ftp>> supertietokoneelle, ja
l{hett{{ se sitten suoritettavaksi supertietokoneen
ositusk{ytt|istunnosta.
 
 
/section</ii<Jonotyypit>>
 
</sc Nqs>-j{rjestelm{ss{ er{ty|t l{hetet{{n ns.  </sl
/ii<yleisjono>ihin> (/ii<pipe queue>s), joista j{rjestelm{ ohjaa ty|t
niiden tarvitsemien resurssien mukaan automaattisesti
varsinaisiin </sl/ii<suoritusjono>ihin>. 
 
K{ytt{j{ voi vaikuttaa siis suoritusjonon valintaan vain antamalla
ty|lle resurssirajat, kuten CPU-aikarajan, muistirajan ja
k{ytett{vien nauhojen m{{r{n, jne. Sen sijaan k{ytt{j{ ei voi suoraan
l{hett{{ ty|t{ haluamaansa suoritusjonoon. T{m{ menetelm{ sallii
suoritusjonojen resurssirajojen muuttamisen joustavasti, ja TLP voi
niit{ my|s muuttaa ilmoittamatta muutoksesta ennakkoon k{ytt{jille.
Siksi on suositeltavaa, ett{ kullekin ty|lle ilmoitetaan j{rkev{t
rajat sen tarvitsemille resursseille.
 
Jonojen hallintaa varten jonot jaetaan viel{ ns.  </sl
jonoryhmiin> (/ii<queue complex>).  

/iii<jonoryhm{> 
Er{ajojonot on ryhmitelty lyhyiden (short), keskipitkien (medium), 
pitkien (long) ja
isojen eli paljon muistia vaativien (large) t|iden jonoryhmiin.
Isoiksi t|iksi luetaan kaikki yli 8 megasanaa muistia vaativat ty|t.
Lis{ksi on pikaluokka (quick), jossa on tarkoitus ajaa pikkut|it{.
 
Yleisjonoja on useita eri tarkoituksiin. N{ist{ p{{k{ytt{jille
t{rkeimm{t ovat perus- (prime), y|- (night) ja nauhajonot (tape).
%%%</bf free????>
 
/ii<Perusjono>t ovat "/ii<p{iv{jono>ja". Niit{ ajetaan kuitenkin ymp{ri
vuorokauden korkealla prioriteetilla. N{m{ ovat my|s oletusjonoja, joihin
ty|t ohjautuvat, ellei niit{ erikseen ohjata muihin jonoihin.
 
/ii<Y|jono>t ovat y|- ja viikonloppujonoja, ne avataan arki-iltaisin
noin kello 20 ja suljetaan seuraavana arkiaamuna noin kello 8.
Kellonajat eiv{t ole tarkkoja ja ne riippuvat operointik{yt{nn|st{.
Y|jonoilla on alhaisempi prioriteetti kuin p{iv{jonoilla.
 
/ii<Nauhajono>t ovat ainoita jonoja, jotka ovat avoinna vain valvottuna
aikana, eli arkip{ivisin noin kello 8--20 riippuen
operointik{yt{nn|st{. Vain n{iss{ jonoissa voidaan k{ytt{{ operointia
vaativia palveluja, kuten nauhoja. Erityisesti siis perus- ja
y|jonoissa ei voida k{ytt{{ magneettinauhoja, koska kyseisi{ jonoja
voidaan ajaa my|s valvomattomana aikana. Nauhajonoja ei toistaiseksi
ole toteutettu.
 
Koko j{rjestelm{lle ja kullekin yleisjonolle, /ii<jonoryhm{>lle ja
suoritusjonolle annetaan erilaisia t|iden suoritukseen vaikuttavia
parametreja, kuten jonosta suoritettavana olevien t|iden yl{raja,
niiden jonotus- ja suoritusprioriteetit, jne., joitten avulla
j{rjestelm{ huolehtii t|iden optimaalisesta suoritusj{rjestyksest{.
 
/section<Jonon valintaan vaikuttavia seikkoja>
 
Laskutus (kiinti|n kuluminen) riippuu k{ytetyst{ ajojonosta.
Laskutettavaan cpu-aikaan kuuluu sek{ "user cpu" -aika  (= k{ytt{j{n
kirjoittaman ohjelman tai k{ytetyn ohjelmiston komentoihin kuluva
aika) ett{ "system cpu" -aika (= k{ytt|j{rjestelm{n kutsuihin kuluva
aika, tyypillisesti esimerkiksi sy|tt|- tai tulostus; t{m{kin aika on
siis k{ytt{j{n ohjelman suoritusta eik{ systeemin "yleisrasitetta").  
 
/iii<free-jono>
Kiinti|n loputtua p{{k{ytt{j{ryhm{{n kuuluvalla k{ytt{j{ll{ on mahdollisuus
l{hett{{ t|it{ jonoon </tt free>, jossa ajettu ty| ei kuluta kiinti|t{, 
mutta jossa t|iden prioriteetti on alhainen ja jossa t|it{ siten ajetaan
vain silloin kun supertietokoneella ei ole muuta kuormaa. Ty|t etenev{t siis
hitaasti jonossa </tt free>. 
 
Ty|n l{pimenoaika riippuu sen suoritusprioriteetista.  Ty|n
suoritusaikainen /ii<prioriteetti> eli /ii<nice-arvo>
m{{r{ytyy siit{, kuinka paljon ty| vaatii resursseja. 
Lyhyt, v{h{n muistia vaativa ty| voidaan suorittaa korkealla
prioriteetilla (pieni nice-arvo) kun taas pitk{, paljon
muistia k{ytt{v{ ty| suoritetaan alhaisella prioriteetilla
(korkea nice-arvo).  </sc Unix>in nice-arvo kertoo kuinka
kiltti ty| on muita t|it{ kohtaan.  Eli korkea nice-arvo
kertoo, ett{ ty| on kohtelias ja p{{st{{ muut edelleen. 
 
/page
 
/section</ii<Ty|luokat>>
 
Ty|t jaotellaan t{ll{ hetkell{ seuraaviin luokkiin sen perusteella,
miten paljon ne pyyt{v{t resursseja:
 
</leftskip5mm/font/tt=cmtt8
/beginverbatim
 
luokka           maksimi       maksimi         suoritusjonon nimi
                 cpu-aika      muisti
                               megasanoja      perus            y|
 
             -lT                 -lm         
 
quick         15     15 s         8Mw           p15m8           -
short         90    1.5 m         8Mw           p90m8           -
             900     15 m         8Mw          p900m8        n900m8
medium      4000    1.1 h         8Mw         p4000m8       n4000m8
            9000    2.5 h         8Mw         p9000m8       n9000m8
long       40000   11.1 h         8Mw        p40000m8      n40000m8
           90000     25 h         8Mw        p90000m8      n90000m8
 
large       9000    2.5 m        16Mw        p9000m16           -
            9000    2.5 m        24Mw           -           n9000m24
           90000     25 h        29Mw           -           n90000mu
 
unlim         ei rajoitusta      29Mw           unlim
 
free       90000     25 h         8Mw            free
/endverbatim>
 
Taulukossa </tt -lT> ja </tt -lm> ovat </tt qsub> -komennon optioita, 
jotka selitet{{n luvussa /ref<11.4>
 
 
/iii<unlim-jono>
Cpu-aika on rajoitettu 90 000 sekuntiin eli 25 tuntiin. T{t{ pitempi{
t|it{ varten on </tt unlim>-jono, mutta sen k{ytt| on rajoitettua.
Jono </tt unlim> on tavallisesti suljettu, ja sen k{yt|st{ on
aina neuvoteltava erikseen.
 
Yll{ esitettyj{ rajoja voidaan kuitenkin muuttaa koska tahansa
ilmoittamatta siit{ etuk{teen, joten t|iden tarvitsemat resurssirajat
on syyt{ ilmoittaa todellisina realistisina (yl{)arvioina ty|n
tarvitsemille resursseille.
 
Luokka </tt/ii<quick>> on oletusluokka, johon ty|t ohjautuvat
automaattisesti, ellei mit{{n resurssirajoja ilmoiteta. Vastaavasti,
jos cpu-aika- tai muistirajaa ei ilmoiteta, oletuksena on pienin
mahdollinen muut ehdot t{ytt{v{ luokka.  Mik{li yleisjonoa ei
ilmoiteta, oletuksena on ehdot t{ytt{v{ perusjono.  Mik{li
resurssivaatimukset ovat ristiriitaiset tai niit{ vastaavaa luokkaa
ei ole, ty| palautuu v{litt|m{sti k{ytt{j{lle virheilmoituksen kera.
 
Kaikki er{ty|jonot voi listata komennolla </tt/ii<qstat>>. 
K{ytt{jien jonojen nimet alkavat joko </tt p>- tai </tt
n>-kirjaimella (nauhajonoja ei ole).  Kirjaimella </tt p>
alkavat jonot ovat /ii<p{iv{jono>ja (prime) ja </tt n>-jonot ovat
/ii<y|jono>ja (night).  P{iv{jonot ovat itseasiassa avoinna aina,
y|jonot ovat avoinna vain |isin ja viikonloppuisin.  Aamulla
y|jonot pys{ytet{{n niin, ettei niist{ l{hde uusia t|it{
suoritukseen; keskener{iset ty|t pyrit{{n kuitenkin
suorittamaan loppuun.  Laskutus m{{r{ytyy jonon ja sit{
kautta ajoajan mukaan. 
 
Jonoj{rjestelm{st{ ja er{t|ist{ saa tietoa </sc unicos>in 
komennolla </tt/ii<qstat>>, esimerkiksi
 
</copymode
     qstat              </rm Yleistietoa jonoista>
     qstat -c           </rm Yleistietoa jonoryhmist{>
     qstat -r           </rm Yhteenveto ajossa olevista t|ist{>
     qstat -a           </rm Yhteenveto kaikista t|ist{>
>
 
 
%/section<Kuorman vaihtelu vuorokauden eri aikoina>
 
%J{rjestelm{ss{ pyrit{{n ajamaan samanaikaisesti 4--8 ty|t{
%interaktiivisesta kuormasta riippuen.
%Luokkaan </tt large>
%kuuluvia t|it{ voidaan ajaa vain silloin, kun
%interaktiivisia k{ytt{ji{ ei ole; toisaalta n{ill{ t|ill{ on
%korkeampi prioriteetti kuin muiden y|jonojen t|ill{. 
 
%Ajettava ty|kuorma on erilainen eri vuorokauden aikoina. 
%Esimerkiksi virka-aikana (arkisin noin kello 8--17) ajetaan
%raskaampien t|iden ohella paljon pieni{ k{{nn|s- ja
%testaust|it{.  Virka-aikana on ositusk{ytt| my|s
%suurimmillaan.  Vastaavasti ilta-aikaan (arkisin noin kello
%17--24 sek{ viikonloppuisin p{iv{ll{) ajetaan paljon pieni{
%(muistin k{yt|n suhteen; small) t|it{, jotka eiv{t kuluta
%enemp{{ kuin 4 megasanaa muistia.  Y|ll{ (noin kello 0--8)
%ajetaan paljon muistia vaativia t|it{.  Keskikokoinen,
%perusjonossa oleva ty| edennee vuorokauden ajankohdasta
%riippumatta verrattain tasaisesti. 
 
 
/section<Er{ajoty|n komentotiedosto ja optiot>
 
/ii<Er{ajoty|> kirjoitetaan aina /ii<komentotiedosto>on
(/ii<script> file).  
Oletuksena on, ett{ er{ajoissa
k{ytet{{n samaa /ii<komentotulkki>a kuin interaktiivisessa
istunnossa eli sit{ komentotulkkia, joka k{ynnistyy automaattisesti
kun yhteys syntyy (</tt/ii<login-shell>>). Er{ty| kannattaa kirjoittaa
k{ytt{en /ii<Bourne-shell>i{. T{ll|in ty|n loppuun saa raportin
k{ytetyist{ resursseista (</tt Job accounting summary report>).
Lis{ksi erilaisissa virhetilanteissa, esimerkiksi kun ty|n 
cpu-aika loppuu kesken, Bourne-shellill{ kirjoitettu
ty| saa "armonaikaa" joitakin sekunteja ja pystyy suorittamaan
scriptin loppuun. 
 
Kaikilla uusilla k{ytt{jill{ on k{yt|ss{ komentotulkkina
Bourne-shell. Unixiin tottuneet k{ytt{j{t haluavat yleens{
kuitenkin k{ytt{{ interaktiivisessa ty|ss{ /ii<C-shell>i{.
Luvussa /ref<9.6> (Alustustiedostot) kerrotaan
millainen </tt .profile> -alustustiedoston tulee olla, jotta
interaktiivisessa ty|ss{ voi k{ytt{{ C-shelli{ ja er{t|iss{
Bourne-shelli{. 
 
Script-tiedoston alkuun tulee </sc nqs>-er{ajoj{rjestelm{lle
tarkoitettuja ohjauskomentoja.  N{m{ rivit alkavat
</tt/ii</#>>-merkill{, jolloin ne ovat komentotulkin kannalta
kommenttirivej{.  N{iden </sc nqs>:n komentojen j{lkeen
kirjoitetaan sitten halutut </sc unicos>in komennot. 
 
 
Ohjauskomennon muoto on seuraava:
 
</copymode
      /# QSUB -</sl optio> /optional<</sl limit>>
>
 
Ensimm{isell{ sarakkeella on </tt/#>, sen j{lkeen v{lily|nti ja isoilla
kirjaimilla kirjoitettu </tt/ii<QSUB>>.  Optioiden avulla annetaan ty|lle
resurssien k{ytt|rajat, ohjataan tulostusta ym.
Seuraavassa luetellaan t{rkeimm{t optiot.
 
<$/bullet$> Aika:
 
</copymode
      -lT </sl limit> 
      -lt </sl limit>
>
 
/iii<QSUB-optiot>
Optioilla </tt -lT> tai </tt -lt>  varataan /ii<cpu-aika>.  Cpu-aikaa
voidaan varata koko ty|lle tai jokaiselle prosessille erikseen.
Nykyisess{ konfiguraatiossa ei ole tehty eroa sille, onko
cpu-aikaraja prosessi- vai ty|kohtainen.  Toisin sanoen ty| voi yht{
hyvin koostua yhdest{ pitk{st{ tai useasta lyhyest{ prosessista.
Suositeltavaa on kuitenkin k{ytt{{ koko ty|t{ koskevaa cpu-aikarajaa
</tt -lT>. T{m{ helpottaa ty|n seuraamista, 
kun se on suoritettavana.
Cpu-aika ilmaistaan muodossa 
 
</copymode
      /optional</optional<</sl tunnit>:></sl minuutit>:></sl sekunnit>
>
 
Mik{li ty|n cpu-aikaraja tulee vastaan ennen ohjelman
p{{ttymist{, ty| saa k{ytt||ns{ viel{ "armonaikaa" joitakin
sekunteja.  K{yt{nn|ss{ t{m{ tarkoittaa sit{, ett{
er{ajoty|n script suoritetaan loppuun (esimerkiksi er{ty|n
lopussa olevat tiedostojen h{vitysk{skyt </tt rm> </sl file>
suoritetaan, ja tiedostot h{vi{v{t!).  T{m{ kannattaa ottaa
huomioon er{ajoty|n komentotiedostoa kirjoitettaessa. 
Tarvittaessa er{ty|n komentotiedostossa voi testata,
p{{ttyik| edelt{v{ komento normaalisti vai virheeseen. 
 
Esimerkkej{:
 
</copymode
      -lT 900        </rm 900 sekuntia>
      -lT 2:30       </rm 2 minuuttia 30 sekuntia>
      -lT 5:00:0     </rm 5 tuntia>
>
 
<$/bullet$> Muisti:
 
</copymode
      -lm </sl limit>
>
 
Varataan jokaiselle prosessille muistia </sl
limit/italcorr>in verran.  On olemassa my|s optio </tt -lM>,
jolla asetetaan ty|kohtainen /ii<muistiraja>, mutta sen
k{ytt| ei yleens{ ole mielek{st{. 
 
Jos prosessille m{{r{t{{n esimerkiksi </tt -lm 1Mw> muistiraja, se ei saa
k{ytt{{ 1 Mw enemp{{, mutta voi k{ynnist{{ (fork) toisen prosessin,
jolloin yhteenlaskettu muistin varaus voi olla korkeintaan 2 Mw.
 
Muistin varauksen yksikk|n{ voidaan k{ytt{{ megasanaa eli (Mw) tai
kilosanaa (Kw). 
(Huomaa, ett{ n{m{ yksik|t
tulee todellakin kirjoittaa noin, vastoin normaaleja sopimuksia!
Erityisesti kilon lyhenne on t{ss{ valitettavasti oltava </tt K>, 
ei "oikea" eli </tt k>!)
 
<$/bullet$> /ii<Jono>:
 
</copymode
      -q </sl queue>
>
 
Kerrotaan, ett{ halutaan ohjata ty| muuhun kuin oletuksen
mukaiseen jonoon.  Ty| menee oletuksen mukaan </bf aina>
perusjonoon, ellei k{ytt{j{ erikseen pyyd{ sit{ menem{{n
y|jonoon tai johonkin muuhun erikoisk{ytt||n varattuun
jonoon.  Esimerkiksi </tt -q night> ohjaa ty|n y|jonoon,
</tt -q unlim> ohjaa rajoittamattomaan jonoon ja </tt -q free>
ilmaiseen jonoon.
 
 
<$/bullet$> /ii<Ty|n nimi>:
 
</copymode
      -r </sl request>
>
 
Annetaan ty|lle nimi. Ellei optiota anneta,
ty| saa script file -tiedoston nimen.
 
/iii<er{ty|n tulostustiedostot>
<$/bullet$> Tulostustiedostojen nimet:
 
</copymode
      -o </sl file>
      -e </sl file>
      -eo
>
 
Optiolla </tt -o> ohjataan </tt stdout> tiedostoon </sl file>.
Vastaavasti optiolla </tt -e> ohjataan </tt stderr> haluttuun
tiedostoon.  Optiolla </tt -eo> pyydet{{n yhdist{m{{n </tt stdout> ja
</tt stderr>, jolloin k{ytt{j{lle tulee ty|st{ vain yksi
tulostustiedosto.
 
<$/bullet$> /ii<Komentotulkki>:
 
</copymode
       -s </sl shell>
>
 
Optiolla </tt -s> kerrotaan kumpaa komentotulkkia k{ytet{{n.

</copymode
       -s //bin//sh           Bourne -shell
       -s //bin//csh          C -shell
>

/page
 
/section<Er{ty|n l{hett{minen ja seuraaminen>
 
Ty| voidaan l{hett{{ joko supertietokoneelta </sc unicos>in
</tt qsub>-komennolla tai edustakoneelta Station- tai
Link-ohjelmiston v{lityksell{. 
 
 
/subsection</ii<Er{ty|n l{hett{minen> ja seuraaminen Craylt{>
 
Jos ty| l{hetet{{n supertietokoneelta, on kaikkien ty|h|n liittyvien 
tiedostojen (yleens{) oltava supertietokoneella. 
 
Ty| l{hetet{{n komennolla 
 
</copymode
      qsub /optional<-</sl<optio>>>/iter </sl file>
>
 
miss{ </sl file> on suoritukseen l{hetett{v{ komentotiedosto. 
T{ss{ voi antaa samoja optioita kuin ty|n sis{lt{v{n
tiedoston </tt QSUB>-m{{rittelyill{.
 
Jos ty|n l{hetys onnistuu, </sc nqs> ilmoittaa /ii<ty|n tunnusnumero>n
(/ii<request-id>), jonka avulla ty|n edistymist{ voidaan seurata komennolla
</tt/ii<qstat>>. Komennolla /iii<er{ty|n seuraaminen>
 
</copymode
      qstat -f </sl request-id>
> 
 
saa ty|st{ t{ydellisen kuvauksen.
 
Seuraavassa on esimerkki </tt qstat -a> -komennon tulostuksesta:
 
</font/tt=cmtt8
/beginverbatim
-------------------------------
NQS 5.0.0 BATCH REQUEST SUMMARY                
-------------------------------                 
IDENTIFIER    NAME    USER     QUEUE                JID  PRTY REQMEM REQTIM ST
------------- ------- -------- -------------------- ---- ---- ------ ------ ---
15496.sn1109  nbrun   lounamaa c9000mu@sn1109       3100   29    419   8992 R02
15497.sn1109  nbrun   lounamaa c9000mu@sn1109              63  16384   9000 Qqr
/endverbatim>
 
Sarakkeiden merkitys on:
 
/vskip/baselineskip
</parskip0mm
/leftskip15mm
 
/item<$/bullet$> </tt IDENTIFIER>: </sc nqs>:n antama ty|n tunniste (request-id)
 
/item<$/bullet$> </tt NAME>: ty|n nimi
 
/item<$/bullet$> </tt USER>: ty|n l{hett{j{
 
/item<$/bullet$> </tt QUEUE>: jono, jossa ty| on
 
/item<$/bullet$> </tt JID>: </sc Unicos>in antama ty|n numero (job id)
 
/item<$/bullet$> </tt PRTY>: nice-arvo
 
/item<$/bullet$> </tt REQMEM>: ty|n vaatima muistin m{{r{ 
(kilotavun yksik|iss{)
 
/item<$/bullet$> </tt REQTIM>: j{ljell{ oleva cpu-aika sekunteina laskettuna
siten, ett{ koko ty|lle varatusta cpu-ajasta (optio </tt -lT>) on v{hennetty
k{ytetty cpu-aika
 
/item<$/bullet$> </tt ST>: ty|n tila (status). Ensimm{inen kirjain
kertoo ty|n tilan: R = running, Q = queueing. Jos ty| on
suorituksessa, R-kirjaimen j{lkeen tulee numero, joka kertoo ty|n
aktiivisten prosessien m{{r{n. Jos ty| jonottaa, Q-kirjaimen j{lkeen
on koodi, joka kertoo syyn miksi ty| jonottaa. Esimerkkitapauksessa
syy on </tt qr> eli </tt queue running>.
Toinen yleinen syy on </tt qs> eli </tt queue stopped>.
Suorituksessa olevan ty|n tila voi olla my|s S eli suspended. Ty|
ei t{ll|in etene ennen kuin operattori vapauttaa sen.
 
>
 
Komennolla </tt qstat> n{kee vain omien t|iden tilan. Koko j{rjestelm{n
kuormitusta voi seurata komennolla </tt/ii<jstat>>. Se n{ytt{{ esimerkiksi
t{llaiselta:
 
</font/tt=cmtt8/tt
/copymode
                 nproc     memory         cpu
 jid    owner   use lim  use    lim     use    lim    command
------  ------  --- --- ------ ------  ------ ------  -------
  2905  lounam    2  25    223   ****       2   ****  jstat
  3100  lounam    2  25    828  32768      10   9000  nb
>
 
/vskip/baselineskip
</parskip0mm
/leftskip15mm
 
/item<$/bullet$> </tt jid:> ty|n numero
 
/item<$/bullet$> </tt owner:> ty|n omistaja
 
/item<$/bullet$> </tt nproc:> ty|h|n liittyvien prosessien m{{r{ sek{
prosessien m{{r{n yl{raja (joka on aina 25)
 
/item<$/bullet$> </tt memory:> k{yt|ss{ oleva muistin m{{r{ 512 kilosanan
yksik|iss{ sek{ ty|lle m{{ritelty muistin yl{r{ja. Jos kent{ss{ on
</tt ****>, on kyseess{ interaktiivinen ty|.
 
/item<$/bullet$> </tt cpu:> k{ytetty cpu-aika sekunteina ja cpu-aikaraja

/item<$/bullet$> </tt command:> parhaillaan suorituksessa oleva ohjelma
tai komento

>
 
Job status -n{yt|ss{ ovat mukana my|s interaktiiviset ty|t. Lis{ksi
n{yt|ss{ on sarake </tt sds>, jolla kerrotaan paljonko niin sanottua
</tt secondary data segment>i{ on k{yt|ss{. Nykyisess{ installaatiossa
t{ll{ ei ole mit{{n merkityst{, koska sit{ ei ole k{yt|ss{ lainkaan.

/iii<er{ty|n poistaminen> 
Er{ty|n voi poistaa jonosta komennolla
</tt/ii<qdel> </sl request-id>>. 
Mik{li ty| on suorituksessa, t{ytyy sille l{hett{{ 
signaali numero 9 (eli </ii kill -signaali>) komennolla
</tt qdel -9 </sl request-id>>.

 
/subsection</ii<Er{ty|n l{hett{minen> /ii<Cray Station>in kautta>
 
/ii<Cray Station> -ohjelmisto k{ynnistyy VAX-edustakoneella komennolla 
</copymode 
      cray
>
 
Kuvaruutu jakautuu t{ll|in  kahteen ikkunaan, joista alempaa
k{ytet{{n keskusteluun Station-ohjelmiston kanssa; ylemp{{n saadaan
mm. supertietokoneella olevien t|iden tilaa kuvaava n{ytt|.
Alemmassa ikkunassa n{kyy kehote </tt CRAY/gt>.
 
Tiedostossa </sl tiedosto> oleva er{ty| l{hetet{{n antamalla komento 
</tt/ii<submit>>:
 
</copymode
      CRAY/gt submit </sl tiedosto>
>
 
miss{ </sl tiedosto> sis{lt{{ siis supertietokoneelle l{hetett{v{ 
er{ty|n komentotiedoston.
 
Jos haluat l{hett{{ vain yhden ty|n, etk{ j{{ seuraamaan sen
etenemist{ supertietokoneella, voit l{hett{{ ty|n my|s 
</sc dcl>-komennolla
 
</copymode
      cray submit </sl tiedosto>
>
 
Annettuasi </tt submit>- tai </tt cray submit> komennon Station-ohjelmisto 
kysyy supertietokoneen k{ytt{j{tunnukseen liittyv{n tunnussanan. 
Kirjoittamasi tunnussana ei tule n{kyviin p{{tteelle.
 
 
/subsection</ii<Er{ty|n seuraaminen> Station-ohjelmistolla>
 
Ty|n edistymisen seuraamista helpottaa, jos (esimerkiksi ennen ty|n
l{hett{mist{) antaa komennon
 
</copymode
      CRAY/gt set terminal inform
>
 
jolloin ruudun alareunaan tulee ilmoitus aina kun tiedostoja
siirtyy Crayn ja edustakoneen v{lill{. 
 
L{hetetyn ty|n tilaa voi seurata antamalla Station-ohjelmistolle
komento
 
</copymode
     CRAY/gt status
>
 
joka tulostaa p{{tteelle kaikkien k{ynniss{ olevien t|iden tilan.
N{yt|ss{ n{kyv{t varsinaisten er{t|iden lis{ksi my|s siirrett{v{t
tiedostot. Status -n{ytt| p{ivittyy automaattisesti muutaman
sekunnin v{lein.
 
Seuraavassa on esimerkki status-n{yt|st{:
 
</parskip0pt
/font/tt=cmtt8
/beginverbatim
 
 Cray system status  EIORS      nqs_job 
 jsq   dc  dataset  class    status   pri   used limit  length  id   tid        
40562  PR  molist  -------  sending   0.0  ----- -----  ------- VX   4::        
40547  ST  transf4 -------  recving   0.0  ----- -----  ------- VX  12::        
40298  IN  hirlam  fmi      RUN       4.0   3892 90000     447  VX   4::        
39825  IN  qmc40   free     QUEUED    2.3      0 90000       0  VX  12::        
39790  IN  T25_25S n9000m8  SUSPEND   2.0   6301  7500    1612  VX   4::        
39604  IN  TXK5:   inter    tty031    0.0      0     0       0  VX OPER         
----end--of--data---------------------------------------------------------
 
 20-FEB-1990 11:03:54.35  OPMVAX to CRAYGW   logged-on    STATUS   Page  1      
 
/endverbatim>
 
 
N{yt|ss{ n{kyv{t seuraavat kent{t:
 
</leftskip5truemm
 
/item<$/bullet$> </tt jsq>:
Station ohjelmiston antama ty|n numero. T{t{ numeroa k{ytet{{n useissa
komennoissa identifioimaan kyseinen ty|.
 
/item<$/bullet$> </tt dc>:
Siirtokoodi, voi olla mm. joku seuraavista:/nl
</tt IN>, jolloin kyseess{ l{hetett{v{ ty|tiedosto tai
interaktiivinen yhteys,/nl
</tt MT>, jolloin tiedosto l{hetet{{n edustakoneen
magneettinauhalle, tai/nl
</tt PR>, jolloin tulostustiedosto l{hetet{{n edustakoneen levylle./nl
</tt ST>, jolloin tiedostoa siirret{{n edustakoneelta Craylle.
 
/item<$/bullet$> </tt dataset>: Ty|n tai l{hetett{v{n tiedoston nimi.
 
/item<$/bullet$> </tt class>: Ty|jono (inter = interaktiivinen yhteys).
 
/item<$/bullet$> </tt status>: Ty|n tila, voi olla mm. seuraavaa:/nl
</tt QUEUED>, jolloin ty| on jonossa,/nl
</tt RUN>, jolloin ty| on suorituksessa,/nl
</tt SUSPEND>, jolloin ty| on suorituksessa, mutta ei etene ennenkuin
operaattori vapauttaa sen,/nl
</tt sending>, jolloin tiedostoa l{hetet{{n parhaillaan
edustakoneelle, tai/nl
</tt recving>, jolloin tiedostoa ollaan juuri siirt{m{ss{ edustakoneelta
craylle.
</tt output>, jolloin ty| on jonottamssa l{hetyst{ takaisin edustakoneelle.
</tt hold>, jolloin ty| on j{{nyt jumiin. T{m{ vaatii manuaalisia
toimenpiteit{, jotta ty| jatkaisi suoritustaan.
 
/item<$/bullet$> </tt pri>: Ty|n prioriteetti.
 
/item<$/bullet$> </tt used>: K{ytetty CPU aika sekunteina.
 
/item<$/bullet$> </tt limit>: Ty|lle m{{ritelty maksimi CPU aika
(voidaan antaa ty|tiedostossa).
 
/item<$/bullet$> </tt length>:
Ty|n vaatima muistin m{{r{ (512 tavun yksikk|in{) kyseisell{ hetkell{.
 
/item<$/bullet$> </tt id>: Attached Stationin tunniste (meill{ k{yt|ss{ VX).
 
/item<$/bullet$> </tt tid>: Edustakoneen tunnus tai k{ytt{j{tunnus,
jos ty| on l{hetetty samalta edustakoneelta kuin mist{ t|it{ seurataan.
 
>
 
N{yt|n alaosassa on tieto siit{ onko yhteys craylle kunnossa eli
edustakone on </tt logged-on> -tilassa. Jos tila on </tt logged-off>,
on yhteys jostain syyst{ poikki.
 
N{yt|n seuraavalle sivulle p{{see komennolla </tt +> ja edelliselle
sivulle vastaavasti komennolla </tt ->.
 
L{hetetty ty| menee ensin edustakoneen jonoon, josta se l{hetet{{n
supertietokoneelle. Edustakoneen jonoa voi seurata komennolla
 
</copymode
    CRAY/gt show queues
>
 
N{yt|lle tulostuu mm. seuraavia tietoja:
 
</parskip0mm/leftskip0cm
/font/tt=cmtt8
/beginverbatim
 
'j{rj.no'       ty|n j{rjestysnumero jonossa
req             suoritettavan siirron tyyppi 
                (esimerkiksi JB = job, AC = acquire)
q-id            ty|n tunnistenumero jonossa
username        VAX k{ytt{j{tunnus
job             siirrett{v{n tiedoston nimi
tid             k{yt{nn|ss{ edustakoneen k{ytt{j{tunnus (Terminal id)
submit/after    aika,jolloin tiedosto siirret{{n 
                (vain jos ty| l{hetetty komennolla submit/after)
    
/endverbatim
>

Ty| voidaan tappaa komennoilla  /iii<er{ty|n poistaminen> 
 
</copymode
    CRAY/gt kill </sl jsq>
    CRAY/gt drop </sl jsq>
>
 
miss{ </sl jsq> on ty|n numero (sen n{kee </tt status>-komennolla).
Komentojen ero on siin{, ett{ </tt/ii<kill>>-komennon j{lkeen Cray ei
l{het{ mit{{n informaatiota keskeytetyst{ ty|st{, kun taas </tt/ii<drop>>-
komennon j{lkeen Cray l{hett{{ tulostiedoston, joka sis{lt{{ tiedot
ty|n etenemisest{ </tt drop>-komentoon asti.
    
Jos Station-ohjelmiston lokia haluaa tutkia my|hemmin, sen saa n{kyviin
komennolla /iii<Stationin loki>
 
</copymode
      CRAY/gt logfile
>
tai
</copymode
      CRAY/gt logfile//since=</sl hh>:</sl<mm>>
>
 
Lokista n{kee ilmoitukset omien tiedostojensa siirrosta, mik{
auttaa selvitt{m{{n syit{ mahdollisesti ep{onnistuneisiin
siirtoihin.
 
</tt Status>-komennon yhteydess{ mainittiin tilanne, jossa ty| on
j{{nyt </tt hold> -tilaan.  T{ll|in ty| ei etene vaan se yritt{{ suorittaa
jotakin toimenpidett{ Crayn ja edustakoneen v{lill{, joka ei kuitenkaan
onnistu.  </tt Logfile>-komento antaa informaatiota </tt hold> tilaan
johtaneista syist{.  Yleisimpi{ tilanteita ovat seuraavat:

</leftskip=1cm

/item<-> Cray yritt{{ l{hett{{ tiedostoa edustakoneelle </tt
dispose>-komennolla, mutta edustakoneella ei ole levytilaa
riitt{v{sti, jotta tiedoston tallennus onnistuisi.  T{ll|in
edustakoneessa on hankittava lis{{ levytilaa tavalla tai
toisella. 

/item<-> Cray yritt{{ siirt{{ tiedostoa verkon yli, mutta tiedoston siirto ei
onnistu, koska tietoliikenneyhteys on poikki.

>

Kun edell{mainitut tilanteet laukeavat, ty| pysyy edelleen 
</tt hold>-tilassa, kunnes k{ytt{j{ tai operaattori antaa 
komennon </tt release> </sl jsq> .
 
Komennolla 
</copymode
      CRAY/gt help
>
saadaan saadaan tietoa komennoista. </sc vms>-komentojen antaminen
onnistuu antamalla </tt /$> ja komento eli
</copymode
      CRAY/gt /$/sl VMS-komento
>
 
/subsection</ii<Er{ty|n l{hett{minen> /ii<Cray Link> -ohjelmistolla>
 
Cray Link -ohjelmisto (</sc cls-ux>) k{ynnistyy 
</sc unix>-edustakoneessa komennolla
 
</copymode 
      cray
>
 
Kuvaruutu jakautuu t{ll|in kahteen ikkunaan, joista alempaa
k{ytet{{n keskusteluun Link-ohjelmiston kanssa; ylemp{{n
saadaan mm.  supertietokoneella olevien t|iden tilaa kuvaava
n{ytt|.  Alemmassa ikkunassa n{kyy kehote </tt Cray/gt>. 
 
Ty| l{hetet{{n antamalla komento </tt/ii<submit>>:
 
</copymode
      Cray/gt submit tiedosto
>
 
miss{ </tt tiedosto> on supertietokoneelle l{hetett{v{ ty|tiedosto.
 
Jos haluat l{hett{{ vain yhden ty|n, etk{ j{{ seuraamaan sen
etenemist{ Crayll{, voit l{hett{{ ty|n my|s </sc unix>in komennolla
 
</copymode
      cray submit tiedosto
>
 
Annettuasi </tt submit>-komennon </sc cls-ux> kysyy 
Crayn k{ytt{j{tunnukseen liittyv{n tunnussanan. 
Kirjoittamasi tunnussana ei tule n{kyviin p{{tteelle.
 
 
/subsection</ii<Er{ty|n seuraaminen> Link-ohjelmistolla>
 
Ty|n seuraaminen on l{hes samanlaista kuin </sc vms>-Stationilla. 
 
Ty|n edistymisen seuraamista helpottaa, jos ennen ty|n l{hett{mist{
antaa komennon
 
</copymode
      Cray/gt notify class all
>
 
jolloin ruudun alareunaan tulee ilmoitus aina kun tiedostoja
siirtyy supertietokoneen ja edustakoneen v{lill{.  
 
L{hetetyn ty|n tilaa voi seurata antamalla </sc cls-ux>:lle
komennon
 
</copymode
      Cray/gt status
>
 
joka tulostaa p{{tteelle k{ytt{j{n omien t|iden tilan, tai 
antamalla komennon
 
</copymode
      Cray/gt status all
>
 
joka tulostaa p{{tteelle kaikkien k{ynniss{ olevien t|iden tilan.
Link-ohjelmiston </tt status>-n{ytt| on samanlainen kuin Station-ohjelmiston 
</tt status>-n{ytt|, joka on kuvattu luvussa /ref<11.5.3>.
 
L{hetetty ty| menee ensin edustakoneen jonoon, josta se l{hetet{{n
Craylle. Edustakoneen jonoa voi seurata komennolla
 
</copymode
      Cray/gt queue
>
 
N{yt|lle tulostuu mm. seuraavia tietoja:
 
</leftskip0cm/font/tt=cmtt8
/beginverbatim
 
queue id        ty|n tunnistenumero jonossa
job name        siirrett{v{n tiedoston nimi
position        ty|n j{rjestysnumero jonossa
status          ty|n jonotustila
user            edustakoneen k{ytt{j{tunnus
    
/endverbatim>

/ii<er{ty|n poistaminen> 
Ty| voidaan tappaa komennoilla 
 
</copymode
      Cray/gt kill </sl jsq>
      Cray/gt drop </sl jsq>
>
 
miss{ </sl jsq> on ty|n numero (sen n{kee </tt status>-komennolla).
 
Jos Link-ohjelmiston lokia haluaa tutkia my|hemmin, sen saa n{kyviin
komennolla /iii<Cray Linkin loki>
 
</copymode
      CRAY/gt logfile
>
 
tai
 
</copymode
      CRAY/gt logfile since</sl hh>:</sl<mm>>
>
 
Lokista n{kee ilmoitukset omien tiedostojensa siirrosta, mik{
auttaa selvitt{m{{n syit{ mahdollisesti ep{onnistuneisiin siirtoihin.
 
Muita hy|dyllisi{ Link-ohjelmiston komentoja:
 
</leftskip27truemm
 
/item</hbox to 25truemm</tt commands/hfill>> 
Komento </tt commands> tulostaa n{yt|lle listan mahdollisista
komennoista; tosin kaikkia n{yt|ll{ n{kyvi{ komentoja 
</sc unicos> ei tue. 
 
/item</hbox to 25truemm</tt help/hfill>>
Komennolla </tt help> saa informaatiota mahdollisista komennoista.
 
/item</hbox to 25truemm</tt cd/hfill>>
Komento </tt cd> vaihtaa nykyhakemistoa edustakoneessa.
 
/item</hbox to 25truemm<</tt !> tai </tt shell>/hfill>>
Sanomalla </tt ! </sl komento>> tai </tt shell </sl komento>>
voi suorittaa yhden komennon </sl komento> edustakoneessa.
 
>
 
/section</ii<Er{t|iden tulostiedostot>>
 
Er{ty|st{ syntyy kaksi tulostustiedostoa: perustulostiedosto 
</tt stdout> ja perusvirheilmoitustiedosto
</tt stderr>. Tiedostoon </tt stdout> tulevat kaikki
normaalit k{ytt|j{rjestelm{n ilmoitukset sek{ ohjelmien kirjoittamat
rivikirjoitintulosteet, kuten </sc fortran>in laitteelle 6 kirjoitetut.
Tiedostoon </tt stderr> tulevat k{ytt|j{rjestelm{n virheilmoitukset
sek{ lista kaikista suoritetuista komennoista. Komentorivit alkavat
</tt +> -merkill{.
 
 
/subsection<Craylt{ l{hetetyn er{ty|n tulosteet>
 
Ellei </tt QSUB>-optioilla ole erikseen ilmoitettu, on
tiedoston </tt stdout> nimi </sl ty|nimi</tt.o>ty|numero>.
Vastaavasti </tt stderr>-tiedoston nimi on 
</sl ty|nimi</tt.e>ty|numero>. Ty|n p{{tytty{ tiedostot tulevat k{ytt{j{lle
siihen hakemistoon, mist{ ty| l{hetettiin.
 
 
/subsection<Edustakoneelta l{hetetyn ty|n tulosteet>
 
Ty|n tulostus palautuu edustakoneen siihen hakemistoon, josta ty|
l{hetettiin.  Tulostus tulee tiedostoon nimell{, jonka alkuosana on
ty|n nimi.  Jos ty|n l{hetys ep{onnistuu esimerkiksi virheellisen
k{ytt{j{tunnuksen tai salasanan takia, syntyy edustakoneelle tiedosto
</tt/ii<error.cpr>>.
 
Ty|n nimen oletusarvo Station- ja Link-ohjelmistoilla l{hetetyiss{
t|iss{ on k{ytt{j{tunnus supertietokoneella, mutta sit{ voi muuttaa
ty|tiedostossa komennolla
 
</copymode
      /# QSUB -r nimi
>
 
 
Station-ohjelmistolla l{hetetyn ty|n tulostustiedoston nimen loppuosa
(eli tiedoston tyyppi) on </tt .cpr>.
 
Link-ohjelmistolla l{hetetyn ty|n tulostustiedoston nimi muodostuu
ty|n nimest{, jonka loppuun on lis{tty </tt .cpr>. Esimerkkin{
tulostiedosto </tt testi.cpr>. Jos samannimisi{
tulostiedostoja on useita, uusimman tiedoston nimi on </tt testi.cpr>
ja vanhempien tiedostojen nimeen on liitetty j{rjestynumero siten,
ett{ vanhimman tiedoston j{rjestysnumero on yksi eli </tt testi.cpr.1>. 
 
/section<Fetch, acquire ja dispose>
 
Tiedostoja voidaan siirt{{ Crayn ja edustakoneen v{lill{
k{tevimmin komennoilla </tt fetch>, </tt acquire> ja </tt dispose>.
 
</tt/ii<fetch>> siirt{{ tiedoston edustakoneelta Craylle.  Ensimm{isen{
annetaan tiedoston nimi Crayll{ ja optiolla </tt -t>
tiedoston nimi edustakoneessa.  Oletuksena on edustakoneen 
hakemisto, josta ty| on l{hetetty.  Voit my|s antaa koko
hakemistopolun. Komento
    
</copymode
      fetch cray.file -t 'front.file'
>
 
hakee siis edustakoneen tiedoston </tt front.file> ja tallettaa
sen Crayn tiedostoksi </tt cray.file>.
 
 
My|s </tt/ii<acquire>> siirt{{ tiedoston edustakoneelta Craylle. 
Muuten identtinen komennon </tt fetch> kanssa, mutta </tt acquire>
tarkistaa (nimen perusteella), onko siirrett{v{ tiedosto jo
olemassa Crayll{; jos on, niin siirtoa ei suoriteta.  </tt acquire>
ei siis vertaa tiedostojen sis{lt|j{ eik{ p{iv{yksi{ vaan
ainoastaan tiedostojen nimi{. 
 
Komennolla </tt/ii<dispose>> siirret{{n tiedosto Craylt{
edustakoneelle.  Ensimm{isen{ annetaan tiedoston nimi
Crayll{ ja optiolla </tt -t> tiedoston nimi edustakoneessa. 
Komento
 
</copymode
      dispose cray.file -t 'work/$disk:/lt<lounamaa/gt>front.file'
>
 
kopioi siis Crayll{ olevan tiedoston </tt cray.file>
edustakoneen (t{ss{ </sc opmvax>) ty|levylle tiedostoon </tt front.file>.
 
Vastaava komento </sc unix> -edustakoneella on
 
</copymode
      dispose cray.file -t '//tmp//lounamaa//front.file'
>      
 
/section<T|iden /ii<jatkoaloitus>>

Suunniteltujen katkojen yhteydess{ kaikkien j{rjestelm{n
er{t|iden tilanne talletetaan automaattisesti eli t|ist{
otetaan </tt/ii<checkpoint>>.  Katkon j{lkeen ty|t jatkavat
automaattisesti viimeisest{ jatkoaloituskohdasta.
T|iden j{rjestys er{ty|jonoissa my|s s{ilyy t{sm{lleen
samanlaisena kuin ennen katkoa. 

Kokemuksen mukaan jatkoaloitus toimii hyvin luotettavasti. 
Kuitenkin k{ytt{j{n, joka ajaa useita vuorokausia kest{vi{
er{ajoja, tulisi aina huolehtia siit{, ett{ ty| pystyy
k{ytt|j{rjestelm{n jatkoaloituksesta riippumatta
itsen{isesti toipumaan katkosta esimerkiksi kirjoittamalla
s{{nn|llisesti v{lituloksia tiedostoon.  

</sc nqs> -er{t|iss{ on k{ytett{viss{ komento </tt/ii<qchkpnt>>, jolla
voi tallettaa er{ty|n sen hetkisen tilan. K{tev{{ on, ett{
komentoa voi my|s kutsua </sc fortran> -kielisest{ ohjelmasta
seuraavasti:

</copymode
        ISTAT=ISHELL('//usr//bin//qchkpnt')
>

</sc Unicos>issa on my|s
k{ytett{viss{ systeemikutsut </tt/ii<chkpnt>> ja </tt/ii<restart>>,
joita voi k{ytt{{ C-kielisest{ ohjelmasta. 

Jos ty|n jatkoaloitus jostain syyst{ ep{onnistuu, er{ajoj{rjestelm{
l{hett{{ k{ytt{j{lle mailin tapahtuneesta ja ty| alkaa uudelleen
alusta.  Yleens{ syyt ovat k{ytt|j{rjestelm{{n liittyvi{ eik{
k{ytt{j{ voi niille mit{{n. Joskus kuitenkin k{ytt{j{ voi itse
vaikuttaa jatkoaloituksen onnistumiseen. Komennolla </tt man 2
restart> saa pitk{n listan niist{ tilanteista, jotka aiheuttavat
jatkoaloituksen ep{onnistumisen. K{ytt{j{n kannalta t{rkeimpi{ ovat
tiedostoihin liittyv{t syyt; ajon k{ytt{m{{n tiedostoon on koskettu 
tai tiedosto on kadonnut.

Komennolla </tt/ii<qstat> -f> </sl req-id> n{kee ty|n tilan. 
Jos ty| jonottaa eli sen status on </tt QUEUEING> ja
jos kohdassa
</tt /lt FILES/gt > on kent{ss{ </tt Restart> oudon n{k|inen tiedostonimi,
on ty|st{ otettu </tt checkpoint>, mutta
sit{ ei ole viel{ jatkoaloitettu. T{ss{ tilanteessa on t{rke{{, ett{
k{ytt{j{ ei koske mihink{{n ty|h|n liittyviin tiedostoihin.

Ohjelman jatkoaloitus ei onnistu, jos ohjelma lukee sy|tteen
er{ajon komentotiedostosta (eli k{ytt{{ </sc unix>in sy|t|n
ohjauspiirrett{ </tt /lt/lt> eli "/ii<here document>"
-piirrett{).  T{llainen komentotiedoston sis{ll{ oleva
sy|tt|tiedosto ei j{rjestelm{n mielest{ ole todellinen
tiedosto eik{ sit{ l|ydy jatkoaloituksessa.
Er{ty|ss{ saa kyll{ olla here document -ohjauksia, mutta
jatkoaloitus ei onnistu silloin, jos checkpointin
keskeytt{m{ ohjelma oli keskeytett{ess{ juuri lukemassa here
document -tiedostoa.  Suositeltava tapa onkin kirjoittaa
ohjelman lukemat here document -sy|tt|tiedot johonkin
pysyv{{n tiedostoon esimerkiksi heti er{ty|n alussa, jolloin
jatkoaloituksen mahdollinen ep{onnistuminen ei juuri
haittaa: Komentojen

</copymode
      .//a.out /lt/lt<loppuu>
      T{ss{ on dataa,
      mutta nyt se
      loppuu  
>

sijaan kannattaa siis kirjoittaa

</copymode
      cat /gt</sl tiedosto> /lt/lt<loppuu>
      T{ss{ on dataa,
      mutta nyt se
      loppuu  
      .//a.out /lt</sl tiedosto>
>

/iii<jatkoaloituksen est{minen>
</sc Nqs> -j{rjestelm{n voi est{{ jatkoaloittamasta ty|t{ komennon
</tt qsub> optiolla </tt -nc>, jolloin ty| aloittaa aina alusta, vaikka
katko olisikin ollut ennakoitu. Optiolla </tt -nr> voi kokonaan est{{ ty|n
uudelleen ajamisen katkon j{lkeen.

/section<Esimerkki: Craylt{ l{hetett{v{ er{ty|>

T{ss{ esimerkiss{ on Crayll{ sijaitseva komentotiedosto, jossa k{{nnet{{n,
linkitet{{n ja suoritetaan  kotihakemistossa
oleva Fortran-ohjelma </tt prog.f>. Ohjelma suoritetaan 
tilap{istiedostoalueella </tt //tmp>.

</copymode
      /# QSUB -lT 10:00                      rivi 1
      /# QSUB -lm 1500Kw                          2
      /# QSUB -eo                                 3
      /# QSUB -me                                 4
      /# QSUB                                     5
      mkdir //tmp//p/$/$                             6
      cd //tmp//p/$/$                                7
      cft77 /$HOME//prog.f                         8
      segldr -o prog prog.o                      9
      .//prog /lt /$HOME//input                      10
>

Oikeassa reunassa olevia rivinumeroita ei kirjoiteta tiedostoon;
ne viittaavat seuraaviin huomautuksiin:

</leftskip2truecm

/item<<Rivi 1:/hfill>> M{{ritell{{n ty|n cpu-aikarajaksi 10 minuuttia.

/item<<Rivi 2:/hfill>> M{{ritell{{n ty|n muistirajaksi 1500 kilosanaa.

/item<<Rivi 3:/hfill>> Yhdistet{{n perustulostustiedostot 
  </tt stdout> ja </tt stderr>. 
  Ty|st{ saadaan vain yksi tulostiedosto.

/item<<Rivi 4:/hfill>> Pyydet{{n, ett{ </sc nqs> l{hett{{
mailin kun ty| on loppunut. 

/item<<Rivi 5:/hfill>> Ilmoitetaan, ett{ </tt qsub>-komennon
optiot loppuivat. 

/item<<Rivi 6:/hfill>> Tehd{{n tilap{istiedostoja varten hakemisto.
Tietosuojan vuoksi on suositeltavaa tehd{ tilap{istiedostohakemiston
(</tt //tmp>) alle </bf aina> alihakemisto. Alihakemisto on t{ss{
nimelt{{n </tt p/$/$>. Kahden </tt /$>-merkin tilalle nimeen tulee
ty|n numero. Nimest{ tulee n{in yksik{sitteinen, eik{ aiheudu
sekaannuksia muiden t|iden tiedostojen kesken.  Omien t|idens{
alihakemistot </tt p/$/$> voi my|s ker{t{ </tt//tmp>-hakemiston
alihakemistoon, jolloin ne l|yt{{ helpommin.

/item<<Rivi 7:/hfill>> Siirryt{{n tilap{istiedostohakemistoon
komennolla </tt cd> (change directory). Oletetaan, ett{ ty| k{ytt{{
suuria ajoaikaisia tiedostoja. Fortran-ohjelmien tiedostot ovat
nimelt{{n </tt fort.nn>, miss{ nn on tiedoston </tt unit>-numero.
Tiedostoja ei tarvitse erikseen m{{ritell{.

/item<<Rivi 8:/hfill>> K{{nnet{{n kotihakemiston (</tt /$HOME>)
tiedostossa </tt prog.f> oleva Fortran-ohjelma. K{{nt{j{n nimi on </tt
cft77>.  K{{nt{j{ tekee nykyhakemistoon tiedoston </tt prog.o>, jossa
on objektikoodi.

/item<<Rivi 9:/hfill>> Linkitet{{n ohjelma komennolla </tt segldr>.
Linkitt{j{ tekee suoritettavasta ohjelmasta aina </tt a.out> -nimisen,
ellei erikseen pyyd{ jotakin muuta, t{ss{ annetaan ohjelman nimeksi
</tt prog> optiolla </tt -o prog>.


/item<<Rivi 10:/hfill>> Suoritetaan </tt prog>-ohjelma. Ohjelma
haetaan nykyhakemistosta, siksi ohjelman nimess{ on hakemistopolku
(</tt .//>) mukana.  Ohjelma lukee sy|tt|tiedot kotihakemiston
tiedostosta </tt input>.

>

Esimerkkiajo tuottaa seuraavanlaisen tulostustiedoston:

</leftskip0cm
/baselineskip10pt
/font/tt=cmtt8
/catcode`/[=12
/catcode`/]=12
/beginverbatim

       UNICOS 5.0.12 running on sn1109 XMP-EA/432


**************************************************************
*                                                            *
*  The Cray will be down from 7:00 until 11:00 every         *
*  Thursday.                                                 *
*                                                            *
*  If you have any problems or questions please send mail    *
*  to user "neuvoja" or "help".                              *
*                                                            *
**************************************************************
+ trap 1 2 3 
+ [ BATCH != BATCH ] 
+ mkdir /tmp/p71463 
+ cd /tmp/p71463 
+ cft77 /csc/lounamaa/prog.f 
+ segldr -o prog prog.o 
+ ./prog 
   STOP        
+ ja -st 


Job Accounting - Summary Report
===============================

Job Accounting File Name         : /tmp/.jacct1455
Operating System                 : sn1109 sn1109 5.0 1109.2 CRAY Y-MP
User Name (ID)                   : lounamaa (103)
Group Name (ID)                  : csc (101)
Account Name (ID)                : a0011 (16)
Job Name (ID)                    : prog (1455)
Report Starts                    : 02/23/90 13:22:06
Report Ends                      : 02/23/90 13:22:10
Elapsed Time                     :            4      Seconds
User CPU Time                    :            0.6488 Seconds
System CPU Time                  :            0.3219 Seconds
I/O Wait Time (Locked)           :            3.0205 Seconds
I/O Wait Time (Unlocked)         :            0.5579 Seconds
CPU Time Memory Integral         :            0.1772 Mword-seconds
SDS Time Memory Integral         :            0.0000 Mword-seconds
I/O Wait Time Memory Integral    :            0.6574 Mword-seconds
Data Transferred                 :            2.3956 Mbytes
Maximum memory used              :       640000      Words
Logical I/O Requests             :          904
Physical I/O Requests            :          389
Number of Commands               :           11
Billing Units                    :            0.2696

/endverbatim>

Tulostustiedoston alussa on systeemitiedotus.  Jos
k{ytt{j{lle on tullut p{{tepostia (maileja), ne tulostuvat
my|s tulostiedoston alkuun.  N{in nekin k{ytt{j{t, jotka
eiv{t k{yt{ supertietokonetta interaktiivisesti, saavat
tiedon saapuneista viesteist{. 

Seuraavilla </tt +>-merkill{ alkavilla riveill{ on listattu
suoritetut komennot.  Siin{ on muitakin kuin k{ytt{j{n
antamia komentoja.  N{m{ tulevat systeemin ja k{ytt{j{n </tt
profile>-tiedostoista.  Listatuissa komennoissa n{kyv{t
k{ytettyjen tiedostojen todelliset nimet. 

Lopuksi ty|st{ saadaan raportti, jossa on eritelty ty|n
vaatimat resurssit.  Ty|n lopussa on kentt{ </tt Billing
units>.  Sit{ k{ytet{{n laskutuksen perusteena; jos ty| on
ajettu p{iv{jonossa, kent{ss{ on ty|n todellinen lopullinen
hinta markkoina.  Jos ty| on ajettu y|jonossa, ty|n
lopullinen hinta on puolet t{st{. 



/section<Esimerkki: edustakoneelta l{hetett{v{ er{ty|>

Ty|n sis{lt{v{ komentotiedosto on p{{piirteiss{{n
samanlainen kuin supertietokoneelta interaktiivisesti
komennolla </tt qsub> l{hetett{v{ script-tiedosto.  Lis{n{
ovat ensimm{isell{ rivill{ ilmoitettava k{ytt{j{tunnus sek{
tiedostojen siirtoa suorittavat komennot </tt fetch>, </tt
acquire> ja </tt dispose>.  Ty|n rakenne ei my|sk{{n riipu
siit{, onko l{hett{v{ ohjelma Cray Station- (</sc vms>) vai
Link-ohjelmisto (</sc unix>). 

Tiedostojen siirtoon tarkoitettuja komentoja voi k{ytt{{ my|s Station- ja
Link-ohjelmistojen kautta otetussa suorak{ytt|istunnossa (</tt cint>). 
Komennot kuvataan tarkemmin luvussa 11.8. 

L{hetett{v{ ty|tiedosto voisi olla esimerkiksi seuraava:

</copymode
      /# user=username
      /# QSUB-r testi 
      /# QSUB-lm 2Mw
      /# QSUB-lT 60
      fetch prog.f -t'prog.for'
      cft77 prog.f
      segldr prog.o
      acquire input -t'input.dat'
      .//a.out /gt results /lt input 
      dispose results -t 'results.out'
>

Ensimm{isell{ rivill{ annetaan supertietokoneen
k{ytt{j{tunnus.  T{ss{ risuaidan (</tt/#>) ja pienill{
kirjaimilla kirjoitetun </tt user>in v{liss{ on ehdottomasti
oltava v{lily|nti. 

Sek{ Station- ett{ Link-ohjelmisto kysyv{t tunnussanan
erikseen.  </bf Tunnussanaa ei saa kirjoittaa tiedostoon!>
(Joissakin Cray Station ja Cray Link -ohjelmistojen
manuaaleissa neuvotaan, miten tunnussana kirjoitetaan
l{hetett{v{{n tiedostoon.  T{k{l{isess{ installaatiossa
tunnussanaa ei saa turvallisuussyist{ kirjoittaa
tiedostoihin.)

Risuaidalla alkavat rivit sis{lt{v{t </sc unicos>in 
</sc  nqs>-j{rjestelm{lle v{litett{vi{ optioita, 
joiden merkitys on selostettu edell{ luvussa /ref<11.4>.



