Dodavanje nekoliko jezgara jednom procesoru nudi značajne prednosti zahvaljujući prirodi modernih operativnih sistema koja obavljaju više zadataka. Međutim, za neke svrhe, postoji gornja praktična granica koliko jezgara donosi poboljšanja u odnosu na cijenu njihovog dodavanja.
Multi-Core Technology Advances
Procesori sa više jezgara dostupni su u personalnim računarima od ranih 2000-ih. Dizajni sa više jezgara su se pozabavili problemom procesora koji su dostigli plafon svojih fizičkih ograničenja u smislu brzine takta i koliko efikasno se mogu hladiti i dalje održavati tačnost. Prelaskom na dodatna jezgra na jednom procesorskom čipu, proizvođači su izbjegli probleme sa brzinama takta efektivnim množenjem količine podataka kojima CPU može rukovati.
Kada su prvobitno objavljeni, proizvođači su nudili samo dvije jezgre u jednom CPU-u, ali sada postoje opcije za četiri, šest, pa čak i 10 ili više. Pored dodavanja jezgara, simultane tehnologije višenitnog rada – kao što je Intelov Hyper-Threading – mogu udvostručiti virtuelna jezgra koje operativni sistem vidi.
Procesi i niti
Proces je specifičan zadatak, poput programa, koji se izvodi na računaru. Proces se sastoji od jedne ili više niti.
Nit je jednostavno jedan tok podataka iz programa koji prolazi kroz procesor na računaru. Svaka aplikacija generiše sopstvenu jednu ili više niti u zavisnosti od toga kako radi. Bez obavljanja više zadataka, procesor sa jednom jezgrom može istovremeno da rukuje samo jednom niti, tako da se sistem brzo prebacuje između niti da bi obradio podatke na naizgled istovremeni način.
Prednost posedovanja više jezgara je da sistem može da obrađuje više od jedne niti istovremeno. Svako jezgro može da obrađuje poseban tok podataka. Ova arhitektura uvelike povećava performanse sistema koji pokreće istovremene aplikacije. Budući da serveri imaju tendenciju da pokreću mnoge istovremene aplikacije u datom trenutku, tehnologija je prvobitno razvijena za korporativne kupce - ali kako su lični računari postali složeniji i povećali broj zadataka, i oni su imali koristi od dodatnih jezgara.
Svakim procesom, međutim, upravlja primarna nit koja može zauzeti samo jedno jezgro. Dakle, relativna brzina programa kao što je igra ili video renderer je teško ograničena na sposobnost jezgre koju prima primarna nit. Primarna nit može apsolutno delegirati sekundarne niti drugim jezgrama - ali igra ne postaje dvostruko brža kada udvostručite jezgra. Dakle, nije neobično da igra u potpunosti maksimizira jednu jezgru (primarna nit), ali vidi samo djelomično korištenje drugih jezgri za sekundarne niti. Nikakvo udvostručenje jezgre ne zaobilazi činjenicu da je primarno jezgro ograničavač brzine za vašu aplikaciju, a aplikacije koje su osjetljive na ovu arhitekturu radit će bolje od aplikacija koje to nisu.
Zavisnost od softvera
Iako koncept višejezgrenih procesora zvuči privlačno, postoji velika opomena za ovu tehnologiju. Da biste uživali u istinskim prednostima višestrukih procesora, softver koji radi na računaru mora biti napisan da podržava višenitnost. Bez softvera koji podržava takvu karakteristiku, niti će se prvenstveno izvoditi kroz jedno jezgro, čime se smanjuje ukupna efikasnost računara. Na kraju krajeva, ako može raditi samo na jednoj jezgri u četverojezgrenom procesoru, možda će biti brže pokrenuti ga na procesoru s dva jezgra s većim osnovnim taktovima.
Svi glavni aktuelni operativni sistemi podržavaju mogućnost višenitnog rada. Ali višenitnost također mora biti upisana u aplikacijski softver. Podrška za višenitnost u potrošačkom softveru se poboljšala tokom godina, ali za mnoge jednostavne programe podrška za višenitnost još uvijek nije implementirana zbog složenosti izrade softvera. Na primjer, program za e-poštu ili web pretraživač vjerovatno neće imati velike koristi od višenitnog rada kao što bi to činili programi za uređivanje grafike ili videa, gdje računar obrađuje složene proračune.
Dobar primjer za objašnjenje ove tendencije je pogled na tipičnu kompjutersku igricu. Većina igara zahtijeva neki oblik rendering engine-a da bi se prikazalo ono što se dešava u igri. Osim toga, neka vrsta umjetne inteligencije kontrolira događaje i likove u igri. Sa jednom jezgrom, oba zadatka se izvršavaju prebacivanjem između njih. Ovaj pristup nije efikasan. Kada bi sistem imao više procesora, renderovanje i AI bi mogli da rade na zasebnom jezgru - idealna situacija za procesor sa više jezgara.
Je 8 > 4 > 2?
Prelazak preko dva jezgra predstavlja mješovite prednosti, s obzirom na to da odgovor za svakog kupca računara zavisi od softvera koji on ili ona obično koristi. Na primjer, mnoge klasične igre još uvijek nude malu razliku u performansama između dvije i četiri jezgre. Čak i moderne igre – od kojih neke navodno zahtevaju ili podržavaju osam jezgara – možda neće raditi bolje od šestojezgrene mašine sa većom osnovnom brzinom takta, s obzirom na to da efikasnost primarne niti upravlja efikasnošću višenitnih performansi.
S druge strane, program za kodiranje videa koji transkodira video će vjerovatno imati velike prednosti jer se individualno prikazivanje okvira može proslijediti različitim jezgrama i zatim spojiti u jedan stream od strane softvera. Stoga će imati osam jezgara još korisnije nego imati četiri. U suštini, primarnoj niti nisu potrebni relativno bogati resursi; umjesto toga, može predati naporan rad kćerkim nitima koje maksimiziraju jezgra procesora.
Brzine sata
Uopšteno govoreći, veća brzina će značiti brži procesor. Brzine takta postaju maglovitije kada uzmete u obzir brzine u odnosu na više jezgara jer procesori krče više niti podataka zahvaljujući dodatnim jezgrama, ali će svako od tih jezgara raditi na nižim brzinama zbog termičkih ograničenja.
Na primjer, dvojezgarni procesor može podržavati osnovne brzine takta od 3,5 GHz za svaki procesor, dok četverojezgarni procesor može raditi samo na 3,0 GHz. Gledajući samo jednu jezgru na svakom od njih, dvojezgarni procesor je 14 posto brži nego na četverojezgrenom. Dakle, ako imate program koji je samo jednonitni, dvojezgreni procesor je zapravo efikasniji. A opet, ako vaš softver može koristiti sva četiri procesora, tada će četverojezgreni procesor zapravo biti oko 70 posto brži od tog dvojezgrenog procesora.
Zaključci
Uglavnom je bolje imati procesor sa većim brojem jezgara ako ga podržavaju vaš softver i tipični slučajevi upotrebe. Uglavnom, dvojezgarni ili četverojezgarni procesor će biti više nego dovoljna snaga za osnovnog korisnika računara. Većina potrošača neće vidjeti nikakve opipljive koristi od prelaska preko četiri procesorska jezgra jer tako malo nespecijaliziranog softvera to koristi. Najbolji slučaj upotrebe procesora sa velikim brojem jezgara odnosi se na mašine koje obavljaju složene zadatke kao što su uređivanje video zapisa na desktopu, neki oblici vrhunskih igara ili komplikovani naučni i matematički programi.
Provjerite naša razmišljanja o tome koliko mi je brz računar potreban? da dobijete bolju predstavu o tome koji tip procesora najbolje odgovara vašim računarskim potrebama.