Srodne teme
12.05.2001. Corel Draw for Linux
26.04.2006. brzi net ;)
23.06.2005. xmms procesi
29.09.2003. one q
10.10.2003. floppy
01.12.2003. Komandna linija i procesi
15.12.2003. Sta su to niti ?
09.12.2003. Brzi internet
19.02.2004. Sendmail problem
08.04.2004. Procesi u Delphiju
Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Procesi i niti (Linux brzi za 30ak procenata!)

[es] :: C/C++ programiranje :: Procesi i niti (Linux brzi za 30ak procenata!)

[ Pregleda: 2403 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.racasse.se

Sajt: dejan.lekic.org


+2 Profil

icon Procesi i niti (Linux brzi za 30ak procenata!)26.02.2002. u 10:41 - pre 220 meseci
Pre nego ospete kritike da kazem ovo , gospodin Dr. Edward G. Bradford [[email protected]] je glavni IBMov covek za "Microsoft Premier Support" u IBMovoj softverskoj grupi, legenda na polju cross-platform programiranja... Znaci, nije u pitanju pristrasna osoba.

Elem, na http://www-106.ibm.com/develop...ux/library/l-rt7/?dwzone=linux mozete videti kako je covek obavio ispitivanja, mozete da skinete source, da iskompajlirate na obe platforme i da se uverite u podatke...

Ukratko: Linux je u testovima brzine kreiranja procesa i niti RAZBUC'O Windows...

Ovo ce verujem posebno interesovati Tatu, s obzirom da se secam nase diskusije na LinuxSerbia :)

Tata, ocekujem tvoj odgovor.
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: Procesi i niti (Linux brzi za 30ak procenata!)26.02.2002. u 23:53 - pre 220 meseci
Najpre da te iskritikujem što mi još nisi odgovorio na ono pitanje o gcc-u, a onda da se bacimo na temu.

Prvo, na LinuxSerbia smo koliko se sećam, raspravljali o tome kako da na Linux-u i ostalim Unix-ima "opslužujem" veliki broj klijenata, s obzirom da nemaju IOCP. Ako te interesuje, još nisam rešio taj problem.

Inače, poznata je stvar da Unix-i mnogo brže prave nove procese nego NT (ovde preskačem 95 seriju, jer nije bitna za raspravu). U Unix svetu je normalno da se forkuju procesi do mile volje, a teško ćeš naći ozbiljnog NT programera koji će da radi nešto slično. Na NT-u ne postoji ništa kao što su grupe procesa na Unix-u, i uopšte interproces komunikacija nema tako veliki značaj. I da dodam da na NT-u nema "Zombija".

E, što se tiče rada sa nitima, tu me je uvaženi Dr Bradford malo iznenadio, ali pošto je na mojoj mašini znatno starija verzija Linux kernela, a imam dial-up vezu sa internetom, ne mogu da proverim njegova zapažanja. Uostalom, više bi me zanimalo kako stoje stvari u pogledu performansi lock-ova na Linux-u vs NT-u, jer to mnogo više utiče na brzinu rada server aplikacija. Imaš li kakva merenja na tu temu?
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: Procesi i niti (Linux brzi za 30ak procenata!)27.02.2002. u 18:13 - pre 220 meseci
Nego (gle, slučajnosti!), na Code Project-u naleteh na diskusiju o gorepomentutom članku. Najpre sam stavio link na tu diskusiju , ali nešto ne radi, pa ću ukratko da prepričam.

Uglavnom, gospoda programeri tvrde da NT server programi i ne treba da prave nove niti (ili, ne daj Bože procese) za svakog klijenta, već treba imati "thread pool" (nek prevede ko zna) a u njemu najviše 10 niti na svaki procesor koji mašina ima. Tako se postiže optimalno "služenje" klijenata i maksimalno iskorišćenje resursa.

A ako je verovati onome što se može pročitati na sajtu
http://www.kegel.com/c10k.html
prolazi i vreme kada se na Unix-ima moglo forkovati bez griže savesti. Uostalom, ako je Unix fork samo duplo brži od NT CreateProcess, čudi me da iko ozbiljan koristi forkovanje, osim za servere sa malim saobraćajem. I Apache su prepravili da koristi "thread pool"-ove.



 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
..ndg-pm4-1.dialup.nethere.net



+6 Profil

icon Re: Procesi i niti (Linux brzi za 30ak procenata!)03.03.2002. u 05:01 - pre 220 meseci
Nema Leke da se javi, a meni žao da propadne ovakva prilika za "flejmovanje" :) pa da opet dodam nešto.

Danas sam "kopao" po nekim knjigama o Unix/Linux network programiranju, pa sam našao jednu stvarno dobru: "Unix Network Programming" Richard Stevens. Evo link na stranicu sa podacima o toj knjizi, a može se naći i source za primere

http://www.kohala.com/start/unpv12e.html

U poglavlju 27 su dati razni pristupi projektovanju klijent-server aplikacija. Autor tvrdi da je fork-ovanje za svakog klijenta bilo prihvatljivo 80-ih, ali danas teško dolazi u obzir. Moderne Unix server aplikacije koriste "pool" - ove procesa, ili još bolje niti, koji se formiraju kod startovanja aplikacije, tako da nema potrebe da se forkuju procesi ili startuju nove niti za svakog klijenta. Jednostavno, to je preskupo, čak i na Unix-ima.

Nažalost, mnogi Unix programeri se tvrdoglavo drže fork-ovanja, neopravdano smatrajući da je to "jeftin" način da se opslužuju klijenti. Jeste jeftin u poređenju sa NT-om, ali je i dalje preterano skup.

Najzad, da ponovo pomenem IO Completion Ports, koji služe kao "psi čuvari" za niti kod NT server aplikacija i omogućuju optimalno korišćenje procesorske snage kod opsluživanja velikog broja klijenata. Priznajem da mi nije jasno zašto Unix-i nemaju tako nešto, tim pre što IOCP nije "izmišljotina" Microsoft-a. I drugi OS-ovi ga imaju (OS/400, VMS, na primer). Znam da je bio neki "patch" na Linux-u za IOCP, ali sam prilično siguran da nije uključen u kernel.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Procesi i niti (Linux brzi za 30ak procenata!)

[ Pregleda: 2403 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Srodne teme
12.05.2001. Corel Draw for Linux
26.04.2006. brzi net ;)
23.06.2005. xmms procesi
29.09.2003. one q
10.10.2003. floppy
01.12.2003. Komandna linija i procesi
15.12.2003. Sta su to niti ?
09.12.2003. Brzi internet
19.02.2004. Sendmail problem
08.04.2004. Procesi u Delphiju
Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.