Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Knjiga za konkurentno programiranje

[es] :: Java :: Knjiga za konkurentno programiranje

[ Pregleda: 7254 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

--SOULMaTe--
Nemanja Skoric
Novi Sad

Član broj: 1464
Poruke: 173
*.nat-pool.nsad.sbb.co.yu.



Profil

icon Knjiga za konkurentno programiranje19.02.2005. u 21:52 - pre 233 meseci
Zdravo ljudi, treba mi savet. Koju mi knjigu preporucujete za progamiranje na paralelnim sistemima u javi? Znaci treba mi knjiga uz koju cu moci da naucim sve o koriscenju threadova u sistemima sa vise procesora i o njihovoj sinhronizaciji i komunikaciji.
Hvala unapred
Don’t do drugs, sleep deprivation is better.
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.ipact.nl.

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Knjiga za konkurentno programiranje19.02.2005. u 23:01 - pre 233 meseci
Citat:
u javi? Znaci treba mi knjiga uz koju cu moci da naucim sve o koriscenju threadova u sistemima sa vise procesora i o njihovoj sinhronizaciji i komunikaciji.
Koliko sam gledao taj deo dokumentacije za Javu, ti kao programer ne vidiš kakva je mašina koja izvršava tvoj kod. Čini mi se čak da na Linuxu na primer, JVM uvek koristi samo jedan procesor, ali nisam siguran.

Na SUN-ovim mašinama je situacija pretpostavljam drugačija, ali tebi kao programeru je svejedno: jedino što imaš su primitive za sinhronizaciju koje ti Java nudi kroz ključnu reč synchronized i wait/notify metode. Niti u istoj JVM dele memoriju. Objekti su vidljivi za sve niti. Između dve različite JVM objekti mogu da komuniciraju recimo preko RMI, ali to nije jedini način.

Kako se to konkretno izvodi imaš u tutorijalima na http://java.sun.com, ali ispravno korišćenje višenitnog rada je pipava tema. Preporučujem ti da potražiš na temu Petrijevih mreža (Petri Nets), ima dosta materijala koji će ti objasniti kako se prave ispravni programi sa više niti.

f
 
Odgovor na temu

sspasic
Sasa Spasic

Član broj: 3261
Poruke: 175
*.medianis.net.

Jabber: sspasic@elitesecurity.org
ICQ: 35454521


Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 00:35 - pre 233 meseci
Citat:
Čini mi se čak da na Linuxu na primer, JVM uvek koristi samo jedan procesor, ali nisam siguran.

Mislim da ovde gresis.
Code:

ps -meo pid,cpu,user,args --sort user | grep java

u drugoj koloni prikazuje za istu JVM razlicite procesore.

 
Odgovor na temu

--SOULMaTe--
Nemanja Skoric
Novi Sad

Član broj: 1464
Poruke: 173
*.sbb.co.yu.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 01:55 - pre 233 meseci
@filmil

Ne znam bas da li bih se slozio. Meni i jeste poenta da mi program radi distribuirano, znaci da koristi vise procesora. Tema koju treba da obradim su paralelni sistemi (parallel computing), tako da ja tacno treba da kazem koji threadovi da se izvrsavaju na kom procesoru i slicno.
Don’t do drugs, sleep deprivation is better.
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.ipact.nl.

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 13:24 - pre 233 meseci
Citat:
Mislim da ovde gresis.
Kao što rekoh, nisam siguran. I dalje mi se mota po glavi da sam takvo nešto pročitao. Možda se odnosilo na neku stariju verziju, ne znam. Na žalost nemam nijedan  multiprocesor pri ruci da proverim što kažeš.

f
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.ipact.nl.

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 15:20 - pre 233 meseci
Citat:
Ne znam bas da li bih se slozio. Meni i jeste poenta da mi program radi distribuirano, znaci da koristi vise procesora. Tema koju treba da obradim su paralelni sistemi (parallel computing), tako da ja tacno treba da kazem koji threadovi da se izvrsavaju na kom procesoru i slicno.
Ne sećam se da sam igde u Java API-ju pročitao da postoje funkcije kojima možeš da dohvatiš takve podatke.

S druge strane, ako koristiš višenitni rad, automatski otvaraš mogućnost da se tvoj program izvršava na više procesora, ukoliko su na raspolaganju. Međutim, odgovornost za raspodelu niti po procesorima je zadatak JVM odnosno operativnog sistema, a ne tvoj.

Za sve praktične primene, ako je program ispravno napisan, izvršavaće se i na jedno- i na višeprocesorskoj mašini. Ako program nije ispravno napisan (vrlo se lako dešava pri višenitnom radu!), prava multiprocesorska mašina može da izazove pojavu grešaka koje bi na uniprocesoru ostale neprimećene.

Na tvom mestu, koristio bih niti (Thread) i ne bih brinuo o raspodeli procesa. Na kraju krajeva, niti tome i služe.

Možda pomogne:
http://java.sun.com/docs/books/vmspec/2nd-edition/html/Concepts.doc.html#33308

Na http://java.sun.com/j2se/1.4.2/docs/guide/jvmpi/jvmpi.html imaš opisan interfejs ka JAVA profajleru, koji se koristi da dovuče razne podatke iz same JVM, što pomaže u analizi rada programa. Ima i delova koji se odnose na pokretanje niti. Možda je to ono što ti treba.

f
 
Odgovor na temu

--SOULMaTe--
Nemanja Skoric
Novi Sad

Član broj: 1464
Poruke: 173
*.nat-pool.nsad.sbb.co.yu.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 18:32 - pre 233 meseci
Cek, recimo da imam vise procesorski sistem, kako bi onda java virtualna masina znala da li ja hocu da mi se sve te niti izvrsavaju na jednom procesoru ili da se raspodele na vise?
Don’t do drugs, sleep deprivation is better.
 
Odgovor na temu

DeepInBrain
Aleksandar Demkovic
Software developer, DMS Group
Novi Sad

Član broj: 7360
Poruke: 45
*.160.eunet.yu.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 18:57 - pre 233 meseci
Ispravite me ako gresim,
ali virtualne masine su upravo te koje omogucavaju kompatibilnost java aplikacija na razlicitim sistemima, sto dalje povlaci da, kad napravis jednu aplikaciju u javi, samo treba naci JVM za sistem na kojoj ona treba da proradi, bila to vise-procesorska masina ili ne!!??
JVM brine o raspodeli thread-ova po procesorima!!??
~ Demkovic ~
 
Odgovor na temu

--SOULMaTe--
Nemanja Skoric
Novi Sad

Član broj: 1464
Poruke: 173
*.nat-pool.nsad.sbb.co.yu.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 19:09 - pre 233 meseci
Pa to jeste tacno, al to nije sporno uopste. Program ce sigurno raditi, nego mi se pitamo kako ce raditi....

Al evo nasao sam clanak u knjizi O'reilly Java Threads :

"How does the Java threading system behave in a multiprocessor system? There are no conceptual differences between a program running on a machine with one processor and a machine with two or more processors; threads behave exactly the same in either case. The real difference is that the threads actually do execute simultaneously. In Chapter 2, we discussed how the operating system switches between the list of instructions for certain threads and how that switching gave the illusion of simultaneity. On a multiprocessor system, the simultaneity is real."

Tako da ce VM sama raspodeliti threadove na vise procesora ukoliko prepozna da je u pitanju multiprocesorski sistem. Ispravite me ako sam lose zakljucio.

Don’t do drugs, sleep deprivation is better.
 
Odgovor na temu

sspasic
Sasa Spasic

Član broj: 3261
Poruke: 175
*.medianis.net.

Jabber: sspasic@elitesecurity.org
ICQ: 35454521


Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 19:17 - pre 233 meseci
JVM brine o raspodeli java thread-ova na native (tj. sistemske) thread-ove, i to radi 1:1 u novijim verzijama jave. Mislim da je ranije moglo i drugačije da se podesi (green threads, ako se ne varam) ali poslednji put kad sam proveravao ova opcija nije bila dostupna na Linux-u.

O raspodeli sistemskih threadova na različite procesore brine OS.
 
Odgovor na temu

--SOULMaTe--
Nemanja Skoric
Novi Sad

Član broj: 1464
Poruke: 173
*.nat-pool.nsad.sbb.co.yu.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 19:29 - pre 233 meseci
tnx na infou svima
Don’t do drugs, sleep deprivation is better.
 
Odgovor na temu

bunker
Srđan Savković
Smederevo

Član broj: 4495
Poruke: 239
*.83.beocity.net.



Profil

icon Re: Knjiga za konkurentno programiranje20.02.2005. u 20:01 - pre 233 meseci
Debagovanje Java, David Mitchell, prevedena je na srpski, Kompjuter biblioteka, ima dobar deo o thredovima i zakljucavanju, deadlocku itd. Mislim da je dovoljno, mada sam odavno citao, ne seccam se bas.
Knjigu bolje pozajmi, ako imas gde, nego da je kupujes, necce biti dovoljna, ali je bacen fokus na to gde treba obratiti paznju (za multi treding)...
Nije važno stići prvi. Važno je prvo da stigneš.
 
Odgovor na temu

nidzika
Nikola Dizdarevic

Član broj: 37715
Poruke: 4
*.beotel.net.

Jabber: nidzika@elitesecurity.org
ICQ: 159738423


Profil

icon Re: Knjiga za konkurentno programiranje03.03.2005. u 16:21 - pre 232 meseci
Poslao sam ti PM u kojoj imash link sa koga mozesh skinuti knjigu Addison Wesley - Concurrent Programming in Java 2nd Ed.pdf.
 
Odgovor na temu

StMilan

Član broj: 5061
Poruke: 144
*.ptt.yu.



Profil

icon Re: Knjiga za konkurentno programiranje06.03.2005. u 19:19 - pre 232 meseci
U novoj Javi 5 dodan je paket java.util.concurrent i izmenjena je JVM da podrzi CAS (compare-and-swap) instrukciju koju u nekom obliku ima vecina danasnjih procesora.
Na IBM developerworks postoji lep tutorial o novim mogucnostima za konkurentno programiranje u Javi 5 i bas su dodali puno lepih stvari. Evo linka:
http://www.ibm.com/developerworks/edu/j-dw-java-concur-i.html

java.util.concurrent je baziran na biblioteci koju je napisao Doug Lea, a sve je to opisao u knjizi Concurrent Programming in Java koja je pomenuta u prethodnom postu.

Bio bih zahvalan ako moze i meni da se prosledi link da skinem pomenutu knjigu. Hvala.
 
Odgovor na temu

igyy
Igor Stojanovic
Osijek

Član broj: 43742
Poruke: 42
*.studom.stucos.hr.



+1 Profil

icon Re: Knjiga za konkurentno programiranje07.03.2005. u 01:21 - pre 232 meseci
Ja sam skinuo hrpu knjiga (ne samo o Javi ) koristei mIRC, nakon što instaliras mirc izaberi mrezu "undernet", imas americki i europski ali svejedno je, kad se spojis na tu mrezu izaberi kanal "ebooks-tech" i tu imas hrpu ljudi koji ti nude download knjiga, upises u komandni promp search java i dobije popis ljudi i njihove liste knjiga...
" A language that doesn't affect the way you think about programming, is not worth knowing!"
 
Odgovor na temu

[es] :: Java :: Knjiga za konkurentno programiranje

[ Pregleda: 7254 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.