Da li mi netko može objasniti vezu između takta procesora i broja jezgri
Procesor općenito
- poruka: 10
- |
- čitano: 5.476
- |
- moderatori:
DrNasty, pirat, XXX-Man, Lazarus Long, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Da li mi netko može objasniti vezu između takta procesora i broja jezgri
veći takt procesora znači da može obraditi više clock cycle-a u sekundi (3 ghz-3 milijarde clock cycye/sek),a više jezgri omogućava da se izvršava više operacija u isto vrijeme,znači veći takt i više jezgri često donose bolje preformanse,ali ne uvijek,tehnologija hyperthreading omogućava da jedna jezgra obrađiva dvije operacije odjednom,tatk se podiže OC-anjem
Evo malo ću citirati sadržaj iz jednog tutorijala na forumu
Znači frekvencija
Kada kupite procesor (ili CPU) vidjet ćete njgovu radnu brzinu. Uzmimo za primjer Intel Core2Duo E4400 procesor koji radi na 2.0 GHz-a ili 2000 MHz-a. To je mjerna jedinica koliko clock cycle-a može proći kroz procesor. Clock cycle je količina vremena potrebna da procesor obradi zadanu instrukciju. Pa, logički, čim više clock cycle-a procesor može izvršiti u 1 sekundi, brže može obrađivati informacije i brže će raditi vaše računalo. 1 MHz je milijun clock cycle-a u sekundi, tako da procesor od 2.0 GHz-a može obraditi 2,000,000,000 clock cycle-a u sekundi!
Znači prije su procesori imali samo jednu fizičku jezgru (iako su jednojezgreni Pentiumi HT zbog HT tehnologije bili prikazivani i korišteni kao Dual coreovi). Kasnije kako je napredovao razvoj procesora, tako su ljudi napravili i više jezgreni procesor. Prednost tih procesora što jedna jezgra može biti rezervirana za operativni sustav, a dok ostale mogu biti rezervirane za neki program koji se u tom trenutku izvodi. Samim time što su dual core (dvojezgreni procesori) na jednakom taktu jednojezgrenog procesora i do nekoliko puta brži, samim time nije bilo potrebe da se ide preko 4GHz na stock (tvorničkoj) frekvenciji, pa današnji dualcore-ovi na 3GHz su daleko brži od jednojezgrenih istog takta (baš zbog toka što OS zna koristiti i pravilno rasporediti te jezgre). Osim dvojezgrenih postoje i četverojezgreni (AMD ima i trojezgrene). Takvi procesori mogu jako puno operacija rasporediti po jezgrama pa oni služe uglavnom za najzahtjevnije operacije (CAD crtanje i procesiranje i 3D modeliranje, HD dekodiranje, također i u serverima znaju se nači čak i dva quad core procesora)
Hm, s nekim stvarima se baš ne bi složio. Prvo, što se takta tiće, procesor svaku naredbu rasčlanjuje na korake pa nije naredba po ciklusu, ali to baš nije najvažnije. Drugo, dva procesora različite arhitekture, a istog takta mogu imati ogromne razlike u performansama.
Drugo, najgora zabluda je da više jezgri donosi višestruko ubrzanje. Mislim da druga jezgra donosi oko 60%, treća nešto manje itd., dodatnih performanski, iako to uvelike ovisi o programima koji se koriste.
Hvala puno! Negdje sam cuo da je jednojezgreni procesor s 3.0 GHz jednak dvojezgrenom od 1.5 GHz. Je li to istina, taj omjer?
Nekim aplikacijama koje nemaju podršku za multi-core procesore važan je takt. Tako, na primjer, ako želiš igrati igre sa PS2 na PC-u pomoću emulatora, za solidan frame-rate trebat' će ti minimalno 3 GHz.
Sa druge strane, neka aplikacije znaju iskoristiti 2, čak 4 jezgre procesora, što donosi mnogo fluidniji rad.
Napomena: Takt i broj jezgara nije sve na što trebaš paziti kod kupovanja procesora. Raspitaj se o količini cachea.
Hvala puno! Negdje sam cuo da je jednojezgreni procesor s 3.0 GHz jednak dvojezgrenom od 1.5 GHz. Je li to istina, taj omjer?
ne, ne zbrajaju se jezgre... svaka jezgra daje odredeni postotak ovisno o arhitekturi i frekvenciji...
evo ti malo stiva za citanje:
http://www.tomshardware.com/reviews/multi-core-cpu,2280.html
Hvala puno! Negdje sam cuo da je jednojezgreni procesor s 3.0 GHz jednak dvojezgrenom od 1.5 GHz. Je li to istina, taj omjer?
nije to bas tako.
i ne treba te bas previse brinuti taj radni takt...
Hm, s nekim stvarima se baš ne bi složio. Prvo, što se takta tiće, procesor svaku naredbu rasčlanjuje na korake pa nije naredba po ciklusu, ali to baš nije najvažnije. Drugo, dva procesora različite arhitekture, a istog takta mogu imati ogromne razlike u performansama.
Drugo, najgora zabluda je da više jezgri donosi višestruko ubrzanje. Mislim da druga jezgra donosi oko 60%, treća nešto manje itd., dodatnih performanski, iako to uvelike ovisi o programima koji se koriste.
donosi visestruko ubrzanje, ali je problem u razvoju aplikacija.
jos se ne ravijaju multithreaded aplikacije u dovoljnoj mjeri i to je razlog zasto 2 ili vise jezgreni cpu nisu dovoljno iskoristeni.
neke aplikacije "znaju" koristiti vise jezgri i njima je "super" ako imas 4 ili, kao novi intel xeon, 8 logickih jezgri jer ih znaju koristiti.
i naravno da risc arhitektura nadmasuje cisc arhitekturu jer ima daleko manji broj naredbi i automatski je jednostavija i brza.
ali za "obicnog", uredskog korisnika sasvim je svejedno...
Hm, s nekim stvarima se baš ne bi složio. Prvo, što se takta tiće, procesor svaku naredbu rasčlanjuje na korake pa nije naredba po ciklusu, ali to baš nije najvažnije. Drugo, dva procesora različite arhitekture, a istog takta mogu imati ogromne razlike u performansama.
Drugo, najgora zabluda je da više jezgri donosi višestruko ubrzanje. Mislim da druga jezgra donosi oko 60%, treća nešto manje itd., dodatnih performanski, iako to uvelike ovisi o programima koji se koriste.
donosi visestruko ubrzanje, ali je problem u razvoju aplikacija.
jos se ne ravijaju multithreaded aplikacije u dovoljnoj mjeri i to je razlog zasto 2 ili vise jezgreni cpu nisu dovoljno iskoristeni.
neke aplikacije "znaju" koristiti vise jezgri i njima je "super" ako imas 4 ili, kao novi intel xeon, 8 logickih jezgri jer ih znaju koristiti.
i naravno da risc arhitektura nadmasuje cisc arhitekturu jer ima daleko manji broj naredbi i automatski je jednostavija i brza.
ali za "obicnog", uredskog korisnika sasvim je svejedno...
Za dvije jezgre bi idealan slučaj bio dva zahtjevna programa i ništa drugo. Svaka jezgra izvršava svoj program, pa bi takav procesor radio otprilike 110% brže (onih cca 10% je zbog toga što više nema potrebe za prebacivanjem između procesa, i vjerojatno je manje od 10%) od jednojezgranog procesora jednake arhitekture i jednakog takta, što je daleko manje od višestruko. Međutim ovo je potpuno nemoguč slučaj jer tu mora postojati neki operativni, driveri, programi u svom radu pozivaju neke sistemske funkcije, događaju se razni prekidi i sl. U tom slučaju se još dodatno smanjuje doprinos uštede pri prebacivanju s procesa na proces, pa je ukupni doprinos tek nešto viši od 100%.
Međutim, to je sve idealno, ali ti programi, čak ako su potpuno nezavisni, opet pristupaju hardware-u (RAM, disk i sl.), a kako se program ne može izvršiti dok ne učita podatke, često se događa da moraju čekati uređaj dok posluži drugi program. To već ruši doprinos druge jezgre ispod cca 95%, a koliko nisko ovisi o programima, operativnom i sl.
Glavni problem je kad se radi o jednom programu, kod kojeg bez obzira kako je dobro optimiziran za višenitno izvršavanje na više jezgri, uvijek različite niti pristupaju nekim zajedničkim podatcima, pa jedna nit mora čekati da druga nit obradi i ažurira informaciju. Jako su rijetke situacije kad se dio posla može potpuno izdvojiti.
Oba problema su sve izraženija što se radi o više jezgri.