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!
07.04.2010 | 23:11
Nisam uopće shvatio što želiš napraviti. Daj probaj dati primjer.
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!
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)?

???
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
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).
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!
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.
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...
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...
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...
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.)
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č.
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!
09.04.2010 | 23:32
Nema na čemu. Probaj pa javi.
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!)
13.04.2010 | 18:50
isprobao noviju skriptu, prekrasna je.
smayoo duznik sam ti.
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.
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...
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.
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
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...
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 3 dana, 19 sati
  • VanjusOS: neki mi javi se privatno, barem ako može kratko posuditi na probu
  • VanjusOS: ljudi, ima li možda netko viška Thunderbolt 2 to Thunderbolt 2 Cable
  • drpongrac23: Davno sam vozio "kockicu"
  • drpongrac23: @Yonkis - Kakav BMW - Uskoro kupujem za sebe Citrć Berlingo, jbg, godine...
  • drpongrac23: A zamjena ekrana preko 500 EUR!
  • drpongrac23: WTF?!? Ušle mi neke "bubice" u ekran na MBA M1. Totalni hit!!! 3 kom. BUBA ŠVABE!!!
  • Yonkis: Drpongrac23: a M5? Ne mislim na BMW.
  • drpongrac23: Preko 30 god. vjerni Apple korisnik - sada je vrijeme da zahvalim svima, ali Apple u mojim očima više nije što je nekad bio.
  • drpongrac23: Ovaj novi MacOS - bye, bye Apple!!! Ćesme od svega!
  • drpongrac23: PC za 400 EUR iz Pevexa žvače taj prastari MacPro za gablec :)
  • drpongrac23: U PC svijetu je DDR5 RAM polako standard - o čemu vi pričate?!?
  • BigMac: i ja kažem, prvo bolja pasta, nego zadnji put, i nižaa temperatura, očito prvi put nisam dobro stegao hladnjake, pa su procesori radili na nižem taktu :(
  • dpasaric: Odlično! :)
  • BigMac: Promjenio pastu na starom mac pro, osvježenje ....
  • smayoo: plus je sigurno problematičan, ali nije jedini
  • dpasaric: Više sam zaboravio koji su sve znakovi u pitanju, ali u tome je stvar.
  • dpasaric: I meni se često dogodi na nešto napišem i samo PUF!
  • dpasaric: Jura, na Vikalici se "progutaju" neki komentari jer postoje neki karakteri koje modul Vikalice ne podnosi i onda to sve samo ode u crnu rupu!
  • jura22: Mozda nezasitan?
  • VanjusOS: evo ja sam isprobao i radi! na A1 je moguće sa fizičke SIM prebaciti se na e-SIM na samom telefonu..
  • Borisone: Jer je gladan!
  • jura22: Zasto Jabucnjak guta komentare?
  • smayoo: :D
  • Borisone: Kako prebacuješ eSIM između moba za koji žena smije i za koji ne smije znat?
  • VanjusOS: ali bravo drlovric, nekad su najjednostavnija rješenje i najbolja!
  • VanjusOS: hahaha, problem je što imam službenu SIM karticu, pa ako mi se sjebe moram tražiti od firme da mi šalju novu...
  • drlovric: Pa probas i samo ce ti se kazati jbt. Sta je najgore sto se moze dogoditi? :)
  • VanjusOS: pitam da li je to itko isprobao?
  • VanjusOS: u iphoneu sa fizičkom sim karticom se pojavila opcija da se prebaci ta fizička sim u e-sim
  • VanjusOS: niste me shvatili, očito
  • miomika: na A1 ti samo pošalju na mail/sms ili putem aplikacije Moj A1 i to je to
  • rusty: Prije jedno 3 godine na Tmobile. u 22h navečer putem supporta jer se u protivnom trebalo ići u poslovnicu
  • VanjusOS: da li je netko isprobao funkciju konvertiranja SIM u e-SIM, i na kojoj mreži?
  • ZoPaj: ha ha, nisu li usbC isforsirali upravo radi štednji na punjačima:)
  • dpasaric: I bez punjača... :(
  • Borisone: Danas najavljeni novi iPad Pro, Vision Pro i MacBook Pro 14-inch. Sve s M5 procesorima (bez Pro i Max varijanti).
  • Air: Veliko priznanje Fedora našem Filipoviću - pozvao ga je na boksački meč.
  • Air: Taj pc laptop je imao cijenu cca 800 eura što nije malo
  • Air: Mislio sam da su se malo pomakli u tom smjeru, ali jok
  • Air: trackpad je... hm...
  • Bertone: Rekao sam ti da je kvaliteta izrade loša, ali sam CPU je brži od CPU-a iz MBP 2014/2015,... stavi na njega LinuxMint pa ćeš vidjeti da nije spor ;)
  • Air: Moj MBP 2014 je ferari / Bentley za usporedbu...
  • Air: Moj utisaK da sam ga platio 100-150 eura plakao bi što nisam dao još 150 za MBP 2014 - 2016 godište.
  • Air: Samo da javim, na kraju sam dobio laptop od frenda. Nije htio čuti za nikakve pare. Skro smo se posvađali ali eto pametniji popušta ;)
  • hal9000: Steve Jobs, vrati se! Sve ti je oprošteno! [link]
  • hal9000: Kakva pizdarija: [link]
  • drpongrac23: Meni onaj sa uzorkom krzna leoparda
  • hal9000: @Bertone: Da, jedan od najdražih Wallpapera ikad.
  • Bertone: 5k [link] i 6k [link]
  • Bertone: ... kojeg rado koristim

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Air, Riba, rusty, tino1, ^SuperUnknown^, Anonimci (469)

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Komentari

Anketa

Koji Mac koristite?

Page Speed 1.24 Seconds

Provided by iJoomla SEO