11Aug

Kodėl procesoriaus šerdys visi turi tą patį greitį, o ne skirtingus?

Jei kada nors padarėte daug palyginimų, apsipirkdami naujam procesoriui, galbūt pastebėjote, kad visi branduoliai, atrodo, turi greitį, o ne skirtingus. Kodėl tai?Šiandien "SuperUser Q &" įrašas turi atsakymą į įdomų skaitytojo klausimą.

Šiandienos klausimas &Atsakymų sesija ateina pas mus iš "SuperUser" - "Stack Exchange", bendruomenės pagrįstos "Q & A" svetainių grupės pasidalijimo.

Klausimas

SuperUser skaitytuvas Jamie nori sužinoti, kodėl visi procesoriaus branduoliai turi tokį patį greitį, o ne skirtingus:

Apskritai, jei perkate naują kompiuterį, galite nustatyti, kurį procesorių pirkti, atsižvelgiant į numatomą kompiuterio darbo krūvį.Vaizdo žaidimų našumą dažniausiai lemia vieno spartos greitis, o tokias programas kaip vaizdo redagavimas priklauso nuo branduolių skaičiaus. Kalbant apie tai, kas yra rinkoje, visi centriniai procesoriai yra maždaug tokio pat greičio, kai pagrindiniai skirtumai yra daugiau temų ar daugiau branduolių.

Pavyzdžiui:

  • "Intel Core i5-7600K", bazinė dažnio 3,80 GHz, 4 branduoliai, 4 gyslos
  • "Intel Core i7-7700K", bazinis dažnis 4,20 GHz, 4 branduoliai, 8 gyslos
  • AMD Ryzen 5 1600X, bazinis dažnis 3,60 GHz, 6šerdys, 12 sriegių
  • AMD Ryzen 7 1800X, bazinis dažnis 3,60 GHz, 8 šerdys, 16 sriegių

Kodėl mes matome šį padidėjusių šerdžių modelį, tačiau visi šerdys turi tą patį laikrodžio greitį?Kodėl nėra variantų su skirtingu laikrodžiu? Pavyzdžiui, du "dideli" branduoliai ir daug mažų branduolių.

Vietoj, tarkim, keturių 4,0 GHz dažnių( ty 4 × 4 GHz, 16 GHz maksimalios), kaip apie centrinį procesorių su dviem šerdimis 4,0 GHz ir 4 GHz dažniais( ty 2 × 4,0 GHz + 4 ×2,0 GHz, maksimalus 16 GHz)?Ar antroji parinktis būtų vienodai gera vieno srovės darbo krūviuose, bet gali būti geresnė daugkartinio sriegio darbo krūviuose?

Aš klausiu apie tai kaip įprastą klausimą, o ne konkrečiai kalbant apie aukščiau išvardytus CPU arba apie bet kurį konkretų darbo krūvį.Man tiesiog įdomu, kodėl modelis yra tas, kas jis yra.

Kodėl visi procesoriaus branduoliai turi tokį patį greitį, o ne skirtingus?

Atsakymas

SuperUser autorius bwDraco atsakė mums:

Tai vadinama heterogenine daugiaprocesine( HMP) ir plačiai naudojama mobiliaisiais prietaisais. ARM pagrindu veikiančiuose įrenginiuose, kuriuose įdiegiamas didelis "LITTLE", procesoriuje yra branduolių su skirtingais našumo ir galios profiliais, ty kai kurie branduoliai sparčiai eina, bet daug energijos( greitesnė architektūra ir( arba) didesni laikrodžiai), o kiti yra energiją taupantys, bet lėtai( lėtesnė architektūra ir( arba) apatiniai laikrodžiai).Tai naudinga, nes energijos naudojimo tendencija neproporcingai didėja, nes padidėja našumas, kai praeina tam tikras taškas. Idėja yra tai, kad jums reikia veikti, kai jums to reikia, ir baterijos veikimo laikas, kai to nepadėsite.

Darbalaukio platformose energijos sąnaudos yra daug mažesnės, todėl tai nėra tikrai reikalinga. Daugelis programų tikisi, kad kiekviena branduolys turi panašių našumo charakteristikų, o HMP sistemų planavimo procesai yra kur kas sudėtingesni nei tradicinių simetrinių daugiaprocesinių( SMP) sistemų planavimas( techniškai Windows 10 palaiko HMP, bet daugiausia skirtas mobiliesiemsprietaisai, naudojantys ARM big. LITTLE).

Be to, dauguma stalinių kompiuterių ir nešiojamųjų kompiuterių procesorių šiandien nėra termiškai ar elektra riboti iki taško, kuriame kai kurie branduoliai turi veikti greičiau nei kiti, net ir trumpiems sprogimams. Mes iš esmės nukreipėme į sieną, kaip greitai mes galime pagaminti atskirus branduolius, taigi kai kurių branduolių pakeitimas lėtesniais neleidžia likusiems šerdims veikti greičiau.

Nors yra keletas stalinių procesorių, turintys vieną ar du branduolius, galintys veikti greičiau nei kiti, ši funkcija šiuo metu yra tik tam tikrų labai aukštųjų "Intel" procesorių( vadinamųjų "Turbo Boost Max Technology 3.0"), ir tik nedidelis pelnastų branduolių, kurie gali veikti greičiau, našumą.

Nors be abejo galima kurti tradicinį "x86" procesorių su didelėmis, greitomis šerdies ir mažesnėmis, lėtesnėmis šerdies, kad optimizuotų didelę srieginę apkrova, tai padidintų procesoriaus dizaino sudėtingumą, todėl jų taikymas greičiausiai nepakaks.

Paimkite hipotetinį procesorių su dviem greitais "Kaby" ežero( 7-os kartos) branduoliais ir aštuoniais lėtais "Goldmont"( Atom) branduoliais. Turėtumėte iš viso 10 šerdžių, o tokio procesoriaus optimizuoti sunkiai įverčiami darbo krūviai gali pagerinti našumą ir efektyvumą per įprastą keturių branduolių "Kaby Lake" procesorių.Tačiau skirtingų tipų branduoliai turi labai skirtingus našumo lygius, o lėtos branduoliai netgi nepalaiko kai kurių instrukcijų, kurias palaiko greitieji branduoliai, pvz., AVX( "ARM" išvengia šios problemos, reikalaudama, kad tiek didieji, tiek nedideli branduoliai atitiktų tas pačias instrukcijas)

Vėlgi dauguma "Windows" daugiakryptinių programų daro prielaidą, kad kiekvienas branduolys turi tą patį arba beveik tokį patį našumą ir gali vykdyti tas pačias instrukcijas, taigi tokia asimetrija gali sukelti mažiau nei idealų našumą, galbūtnetgi sugenda, jei jis naudoja instrukcijas, kurių nepalaiko lėtesni branduoliai. Nors "Intel" gali keisti lėtesnius branduolius, kad galėtumėte įdiegti išplėstinę instrukcijų palaikymą, kad visi branduoliai galėtų atlikti visas instrukcijas, tai neišspręs problemų, susijusių su programinės įrangos palaikymu skirtingiems procesoriams.

Skirtingas požiūris į taikomųjų programų dizainą, arčiau į tai, ko galbūt galvote apie savo klausimą, naudotų GPU, kad pagreitintų labai lygiagrečias paraiškų dalis. Tai galima padaryti naudojant API, kaip OpenCL ir CUDA.Kalbant apie vieno lusto sprendimą, AMD palaiko aparatūros palaikymą GPU greitėjimui savo APU, kuris jungia tradicinį procesorių ir didelio našumo integruotą GPU į tą pačią lustą, kaip Heterogeneous System Architecture, tačiau tai nepastebėjo daugelio pramonės perėmimųkeletą specializuotų programų.

Ar ką nors įtraukti į paaiškinimą?Garsas išjungtas komentaruose. Norite skaityti daugiau atsakymų iš kitų "Tech-savvy Stack Exchange" vartotojų?Patikrinkite visą diskusijų temą čia.

Image Credit: Mirko Waltermann( Flickr)