Red za cekanje
(1 korsinik/a gleda/ju temu) (1) Gost

Red za cekanje


03.04.2010 | 04:38
Pozdrav svima,

I opet imam zgodno pitanjce...

Kako pokrenuti queueing system (ilitiga red za cekanje) command line aplikacije na jednostavan i bezbolan nacin?
Pokusao sam sa xgridom, ali mi bas ne uspjeva (pri cemu mi je kontroler i agent isti komp). Tu foru sam pokusao prilagoditi sa ove adrese: www.macresearch.org/the_xgrid_tutorials_part_i_xgrid_basics, ali kako imam snow lea, bojim se da nisam uspjesno postavio sandbox direktorij, jer sam sve pokusao vrtiti iz klasicnog home foldera...

jel netko radio sa sun gridom na mac-u?

Hvala unaprijed na svim idejama!

Veliki pozdrav!
Tema zaključana.
07.04.2010 | 23:11
Nisam uopće shvatio što želiš napraviti. Daj probaj dati primjer.
Tema zaključana.
08.04.2010 | 21:33
imam jedan dovan program koji se zove orca www.thch.uni-bonn.de/tc/orca/ i sluzi za kvantna kemijska istrazivanja. Instalacija jednostavna, pokrece se u terminalu ./orca input.inp > output.out.
I sve je to divno krasno, ali meni taj program mora obradjivati malo brdo racuna.Tzv. queuing sustav. Podesavanje Torque/PBS i kombinacije s MPI je preteska za moje znanje o programiranju. A za racune koristio bi bijeli intel iMac i MacBook Pro. Ono sto bi htio je da kada ja pokrenem racune, da mi se ne odvijaju svi paralelno, nego jedan po jedan, tj. kada jedan zavrsi, novi se otvara. Pokusao sam napraviti nekakvu skripticu koja bi pronasla sve .inp fajlove i stavljala u format koji treba, ali mi treba komanda koja bi ogranicila pokretanje istodobno. Mislio sam sa wait komandom, ali nije mi uspjelo (zapravo jedanput mi je uspjelo, ali onda sam nesto zafrknuo i izgubio sam ponovno).

Ikakvih ideja?

HVALA NA POMOCI!
Tema zaključana.
08.04.2010 | 21:58
Ne kužim zašto to zoveš "queuing" sustav? Queuing bi bio da imaš npr. neki folder koji bi bio u tom slučaju "queue" i čim u taj folder "padne" (odnekud, preko FTP, AFP ili bilo kako, ručnim kopiranjem ili da ga kreira neka druga aplikacija) neki novi .inp file, Orca aplikacija odmah uzima taj file (FIFO redoslijedom) i generira njegov izlaz, u neki izlazni queue.

Dakle, da li to trebaš?

Jer, ovo što si opisao meni ne zvuči kao queue sustav. Meni to zvuči kao da imaš hrpu .inp fileova negdje i trebaš nahraniti Orcu jednim po jednim, da on za svaki .inp kreira odgovarajući .out, jedan po jedan.

Ako to trebaš, mislim da problema nema jer obična shell skripta se izvodi sekvencijalno (osim ako izričito ne guraš neke procese u background komandom bg ili ih ne umnažaš funkcijom fork).

Ne kužim što u cijeloj priči trebaju raditi 2 Maca? Svaki svoj dio posla (svoj dio .inp-ova)? Oba isto (radi neke kontrole)? Oba iste .inp-ove, ali s različitim parametrima? Jedan drugom dodaje (jedan generira .inp, a drugi ih koristi za .out)?

???
Tema zaključana.
08.04.2010 | 22:58
Da mogu samo ubaciti u folder bio bi cisti ideal!
ZATO PLIZ POMOC (Isabella cluster na Srcu jos ne podrzava taj program)
Jer sada kada ga pokrenem (vrti se po 4-5 sati) i odmah pokrenem drugi, oba se natjecu za resurse. Bas ne kuzim kako se sekvencijalno pokrecu, putem skripte.
A dva mac-a bi trebali moci raditi i svaki svoj i svaki sa istim inputima, ali drugacijim parametrima i da jedan kaze drugome sto da radi.
Puno trazim, znam, ali kada znam da se moze, nesto mi ne da mira...
Pozdrav
Tema zaključana.
09.04.2010 | 00:10
Nije stvar u tome da puno tražiš, nego da ne znaš objasniti što želiš.

Ja shvaćam da je tebi točno jasno što želiš, ali, vjeruj mi, vrlo konfuzno to prenosiš.

Ako želiš pomoć, molim te da se koncentriraš na moja pitanja i odgovaraš na njih što jednostavnije.

1. Kako nastaju .inp datoteke? Kreira ih neki drugi program, ti ručno, "padaju" ti odnekud preko mreže...?

2. Ti nemaš utjecaj na to kamo "padaju" te .inp datoteke? Zašto?

3. KAKO pokreneš jedan, pa odmah pokreneš drugi? Otvoriš dva terminal prozora? Ili nekako drugačije?

4. PO-TAN-KO objasni na koji način dva Maca trebaju ZAJEDNO djelovati. To što ti možeš podijeliti posao pa pola vrtiti na jednom, a pola na drugom zapravo nije ZAJEDNIČKO djelovanje i takav se slučaj ne treba posebno razmatrati (jednostavno na drugom Macu napraviš isto što i na prvom, samo s drugim podacima).
Tema zaključana.
09.04.2010 | 02:16
Da odmah pocnem odgovarati.
1. Inpute sastavljam malenom skriptom koji mi od .xyz rade .inp format spreman za koristenje. Drugi, kemijski program mi generira puno .xyz formate (koordinate atoma u prostoru).
2. (malo nisam razumio) Imam utjecaj kamo padaju datoteke, nemam utjecaj kako mi se pokrecu.
3. Pokretao sam ih
ls *.inp | while read file; do
orca $file > `basename $file .inp`.out
#tu mi nedostaje nesto za razdvajanje; najbolji kandidat mi je bila komanda wait
done
exit
4. Za dva Mac-a, htio sam da se automatski dok su umrezeni podijeli posao, tj. kada ih stavim u mod (po noci) onda da se iz zajednickog foldera pokrecu i na jednom i na drugom razliciti racuni, te da se sync-aju folderi. Nesto kao SETI projekt. Takodjer da mogu udaljeno (remote) pokretati na stolnom kompu racune s MacBook-a. I to jos preko mreze.

Jos jednom puno hvala na pomoci!
Tema zaključana.
09.04.2010 | 09:29
Ad 4 ćemo na kraju.

Ad 2 - ok, ja sam krivo razumio

Ad 3 - takva skripta bi morala procese pokretati sekvencijalno, a ne istodobno. JA sam sad probao kod sebe koristeći openssl des3 za enkripciju polugigabajtnih zipova (to je najbliže procesorskom opterećenju što mogu postići da simuliram to što radi ORCA) i enkripcija uredno radi za jedan po jedan file, a ne za sve istovremeno. To bi se postiglo da se u drugom redu na početak dopiše "bg ".

Moj je zaključak da ORCA ima ugrađeno forkanje, tj da je napisan tako da po definiciji pokrene proces računanja u pozadini i vrati se natrag u shell.

Mora biti da imaš switch koji isključuje to ponašanje. Provjeri upute od programa.
Tema zaključana.
09.04.2010 | 09:46
Imas pravo. Sam program ima forkanje.
Da jos malo o programu. On je modularno napravljen, odnosno kada pokrenem ./orca (stavio sam ga u $PATH) onda sam orca modul rasporedjuje module kada i koji se vrte.
Primjer modula i glavnog programa:
orca : Main input+driver program.
orca_gstep: Relaxation of the geometry based on energies and gradients.
Da li se moze nekako omoguciti da dok god orca* vidi u procesima da ne pokrece ovi proces? Nekakav loop?
Zato sam mislio da mi je queuing system najbolja opcija, a queuing na Mac-u ima naziv XGrid...
Tema zaključana.
09.04.2010 | 15:38
Čuj time (xgrid) se nisam nikad bavio pa ti tu zaista ne mogu pomoći.

Obje ideje (wait kao prva i čekanje da u listi procesa više ne bude orca* procesa) su skriptom izvedive. Malo moram proučiti i probati. Zaintrigirao si me, pozabavit ću se time, ali daj mi malo vremena...
Tema zaključana.
09.04.2010 | 16:08
Hvala na volji i trudu!
Ako treba mozes dobiti i sample same orce pa da vidis konkretno kako programcek funkcionira...
Tema zaključana.
09.04.2010 | 17:03
Eh, da je vremena.

Međutoa, prije ovih drugih kompliciranijih ideja, molim te, probaj sintaksu za forsirano sekvencijalno izvođenje:

ls *.inp | while read file; do
orca $file > `basename $file .inp`.out ; done


Eventualno "done" u treći red, ali svakako točka-zarez na kraj prethodnog reda

(Ova sintaksa se nešto razlikuje od jednog do drugog shella. Defaultni Mac shell kad pokreneš Terminal je bash i ovo što sam ti napisao se odnosi na bash. Ako koristiš csh ili zsh, možda nije isto.)
Tema zaključana.
09.04.2010 | 18:33
Elem, ako ovo gore ne proradi, onda bi ovo moralo:

ls *.inp | while read file; do
orca $file > `basename $file .inp`.out
cekaj=1
while (($cekaj)) ; do
cekaj=0
ps | grep -v grep | grep -q orca && cekaj=1
done
done


Prva dva retka su ti jasna. Treći je inicijalna vrijednost zastavice, a u četvrtom počinje petlja za čekanje, koja se vrti sve dok prilikom testa zastavica ne bude imala vrijednost 0.

Čim se u petlju uđe, zastavicu stavimo na 0, jer želimo da izađe ako je prethodni orca thread završio.

U šestom redu uzmemo listu svih tvojih aktivnih procesa (ps) pa onda iz nje izbacimo redak koji se odnosi na sam grep proces (grep je ugrađeni tekst-filtar) i onda drugim grepom iz onog što je od liste preostalo tražimo ima li redaka s ključnom rječju "orca". Samo ako je IŠTA pronađeno, zastavica se vraća na 1 (nastavljamo čekati). Ako nije ništa pronađeno, prethodni orca thread je završio pa nećemo napraviti ništa.

Kad se unutarnja petlja ponovno zavrti, ako nismo maloprije vratili zastavicu na 1, završit će i onda se nastavlja vanjska petlja gdje se ponovno pokreće orca s idućim inp-om.

Ja sam kod sebe testirao koristeći openssl umjesto orce, s forsiranjem u background (& na kraju retka) i sve mi je radilo pa pretpostavljam da će i tebi. Jedini problem ti može biti ako postoji neki proces koji u imenu sadrži "orca" a da nije povezan s ovom obradom, jer će ti se onda zaglaviti u beskonačnom čekanju. U tom slučaju malo variraj ključnu riječ.
Tema zaključana.
09.04.2010 | 22:10
Smayoo, hvala ti puno. Jos nisam isprobao, ali cim uhvatim malo vremena (pomalo mitska pojava kod mene) i cim mi zavrsi jedan veliki racun (vec se vrti 16 sati), pokusat cu.
Veliki pozdrav i ZAKON SI!
Tema zaključana.
09.04.2010 | 23:32
Nema na čemu. Probaj pa javi.
Tema zaključana.
10.04.2010 | 17:25
vec samo ; poslije naredbe je upalilo.
ali jako mi se svidja ova novija skriptica.
imam samo pitanjce
da li se moze ta skripta pokretati s neke datoteke, i da se u tu datoteku mogu dopisati nove stvari, dok se vec skripta vrti? (dopisivanje je potrebno kako bi ova skripta postala queuing system i onda se system/Unix guruu moram zahvaliti na prosvjetljenju!)
Tema zaključana.
13.04.2010 | 18:50
isprobao noviju skriptu, prekrasna je.
smayoo duznik sam ti.
Tema zaključana.
13.04.2010 | 21:34
dsakic je napisao:
vec samo ; poslije naredbe je upalilo.
ali jako mi se svidja ova novija skriptica.


Drago mi je da radi.

imam samo pitanjce
da li se moze ta skripta pokretati s neke datoteke, i da se u tu datoteku mogu dopisati nove stvari, dok se vec skripta vrti? (dopisivanje je potrebno kako bi ova skripta postala queuing system i onda se system/Unix guruu moram zahvaliti na prosvjetljenju!)



Opet nisam skužio. KAko - s neke datoteke? Misliš - da vuče imena .inp fajli iz datoteke? Može. Samo daj potvrdi da sam te dobro shvatio.
Tema zaključana.
13.04.2010 | 22:53
umjesto
ls *.inp |
samo napisem
cat file_sa_inputima.nekaj |

ono sto me zanima je da li mogu u tu istu datoteku dopisivati imena dok radi ova tvoja gornja skripta? da li bi naletio na probleme da dok bi ja upisivao ime novoj fajla za pokrenuti on trazio slijedecu liniju i zapeo ili se srusio ili nesto (zbog paralenog pristupa istom fajlu sa dvije razlicite akcije..). Nisam siguran u takvu mehaniku, a sada su mi racunala dosta zauzeta racunima pa se ne bi kockal i isao bas sada igrati...
Tema zaključana.
13.04.2010 | 23:51
Ne bi smjelo biti takvih problema, ali cat nije komanda koju trebaš. On pogleda u datoteku i izlista ono što tamo nađe daj čas, pukne to sve grepu kroz pipe i završi kad naiđe na kraj datoteke. On je gotov u djeliću sekunde bez obzira što će obrada poslije trajati sate i sate.

Umjesto cat koristi tail.

Dakle:

tail -f file_sa_inputima.nesto

-f switch će narediti tail komandi da ne završi kad dođe do EOF, nego ostane živa i čeka da nešto još padne u file i tako do kraja svemira.

Dakle, skripta će odraditi točno to što želiš, samo što neće znati kad želiš da bude gotova. Dvije su metode kako da to riješiš.

1. jednostavna i brutalna - kad (iz drugog terminal prozora ili findera) vidiš da si dobio gotove sve outpute iz Orce, prekini skriptu sa CTRL-C (dok je fokus na terminal prozoru)

2. fina i kulturna - treba skriptu dopuniti testom da li je naišao na tekst koji označava kraj i koji ćeš ti na neki drugi način dodati na kraj liste kad to poželiš. Za ovo trenutno nemam vremena, bit će za koji dan, ali i ovo prvo će ti raditi.
Tema zaključana.
14.04.2010 | 08:52
tako jednostavno?
super.
A sto se tice ctrl+c, to mi je vec postala najdraza komanda u mojim eksperimentiranjima u programiranju...
hvala puno
Tema zaključana.
14.04.2010 | 20:23


nema na čemu. Pozovi me na pivu kad doktoriraš!

BTW, prebacio sam cijeli thread u Mac OS X jer definitivno nema baš puno veze sa softverom. Čak bi možda trebao ići i u programiranje...
Tema zaključana.
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 1 tjedan, 2 dana
  • smayoo: piši u forum
  • user: Ako zna netko kako dobiti njihovu zadnju poznatu lokaciju to bi bilo korisno
  • user: pretražio sam sve itd.
  • user: Već sam "play sound" aktivirao, ništa
  • user: nestale mi Airpods 4, what do? Piše "No location found" u FindMy.
  • user: ljudi,
  • CoffeePod: Cijeli 26 relase je bio sramotan za Apple i morali su “double down” i back to the lab da sve tweakaju kako su trebali
  • CoffeePod: Performansi i ulickani dizajn je ono sto treba
  • CoffeePod: Iskreno ne razumjem vas kojima je ovo “dosadno”. Stvarno morate ici taknuti travu.
  • dpasaric: Objavio sam osvrt na naslovnici, pa tamo komentirajte...
  • drlovric: Meni je Siri skroz OK, upakirali su to lijepo. Ocekivano ce vecina puno ovih stvari iic na pretplatu jer trosi compute (i Gemini) resurse. Lejpse mi izgleda UI jer smanjuju prozirnost :)
  • dpasaric: Što je najbolje nećemo imati niti Siri AI jer je EU učinila sve da se to regulatorno zabrani.
  • pontmax1: A dosade, imate li nešto više od šugave SIri AI
  • drlovric: Kao da ce roditelji ovo raditi. Otkljucat ce im sve i cao.
  • drlovric: Smorise sa ovom djecom :) Nestvarno...
  • dpasaric: Za sada dosadno za poludit... :)
  • dpasaric: I ja imam niska očekivanja, pa da vidimo! :)
  • dpasaric: Kreće za 5 minuta! :)
  • drlovric: Meni su ocekivanaj jako nisko. Pricati ce o Siri, koja ce opet doci kao beta. Pa ce raditi kako treba u inacici 27.4 :) Volio bih da grijesim, ali vise im ne vjerujem na rijec.
  • ping: Bit će to zanimljiva večer. Kupio sam dvije vrečice indijskih oraščića i planiram još barem mali paket Munchmallowa.
  • dpasaric: Danas u 19h WWDC! :)
  • Riba: user, ne upisuj admin password ano ne znas tko i zasto te pita i to je u osnovi to.
  • Yonkis: U Berlinu se otvara Developer Centar [link]
  • user: kako biti siguran od virusa na Macu? Sad ću reinstalirati OS i želim biti siguran.
  • user: bok ljudi,
  • Yonkis: Mene, kao prišlića, iznenadilo koliko je puno zastupljeniji Viber nego WhatsApp a Signal skoro nitko nije ni čuo (osim jabučnjaka). Zanimljivo.
  • Riba: Za tajne stvari imam pisacu masinu. :)
  • Riba: Ja imam instalirano sve pa tko kako hoce.
  • drlovric: Sve koje znam koriste Whatsapp. Viber, je isto popularan. Kao i Telegram. Signal nije bas zastupljen u mojim krugovima :)
  • dpasaric: Hehe, odlično, ja sam odavno prebacio sve na Signal.
  • Performita: Hvala Smayoo, Kako je Davor napisao ispod članka, i ja ebo čitam knjigu i lagano sve prijatelje, osobito one koji nemaju iPhone nagovaram na Signal.
  • smayoo: svima koje znam, to jest. :)
  • smayoo: skinuo i proslijedio link svima koji su još sposobni čitati knjige... :)
  • Performita: Ekipa, idemo sad svi skinuti besplatnu knjigu Guya Kawasakija da mu na administraciji stranice pokaže kako je odjeknulo u Hrvatskoj ;-)
  • dpasaric: Jest sitni sat, ali je published! :) Uživajte!
  • Yonkis: [link]
  • Yonkis: Baš baš sve!
  • Djuro genijalac: Izgleda da je BAŠ sve ovdje
  • Djuro genijalac: [link]
  • Yonkis: Hooorayyyy [link]
  • dpasaric: Radim na tome da nabavim zanimljiv monitor za tehnički review, držite palčeve da upali jer bi moglo biti mnogima zanimljivo. :)
  • Yonkis: Font je drugačiji.
  • Performita: :-)
  • dpasaric: Pogledajte naslovnicu! :)
  • dpasaric: Taaaa-daaaa! :)
  • dpasaric: Javim uskoro... :)
  • dpasaric: Ne, ovdje na Jabučnjaku!
  • Yonkis: dpasaric - Jel' u Kokolu?
  • dpasaric: Spremamo poslasticu za večeras! :)
  • ivan.ocd: Hvala za konkretni model, budem i ja pogledao za takav neki model… imam puno knjiga koje trrba analizirati i tu je onda preslab.

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Riba, Anonimci (1035)

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Anketa

Koji Mac koristite?

Page Speed 0.87 Seconds

Provided by iJoomla SEO