Mitmetuumalised protsessorid: kas rohkem on alati parem?

Sisukord:

Mitmetuumalised protsessorid: kas rohkem on alati parem?
Mitmetuumalised protsessorid: kas rohkem on alati parem?
Anonim

Mitme tuuma ühele protsessorile lisamine pakub tänu kaasaegsete operatsioonisüsteemide multitegumtöötlusele märkimisväärseid eeliseid. Mõnel eesmärgil on aga praktiline ülempiir, kui palju südamikke annab täiustusi võrreldes nende lisamise kuludega.

Mitmetuumalise tehnoloogia edusammud

Image
Image

Mitmetuumalised protsessorid on olnud personaalarvutites saadaval alates 2000. aastate algusest. Mitmetuumalised konstruktsioonid lahendasid probleemi, mis tuleneb protsessorite füüsilistest piirangutest, mis puudutavad nende taktsagedust ja seda, kui tõhus alt saab neid jahutada ja säilitada täpsust. Ühe protsessorikiibi lisatuumadele üleminekuga vältisid tootjad probleeme taktsagedusega, korrutades tõhus alt protsessoriga töödeldava andmemahu.

Kui need algselt välja anti, pakkusid tootjad ühes CPU-s vaid kahte tuuma, kuid nüüd on valikud nelja, kuue ja isegi kümne või enama tuuma jaoks. Lisaks tuumade lisamisele võivad samaaegsed mitmelõimestamise tehnoloogiad (nt Inteli Hyper-Threading) kahekordistada virtuaalseid tuumasid, mida operatsioonisüsteem näeb.

Protsessid ja lõimed

Protsess on konkreetne ülesanne, nagu programm, mis töötab arvutis. Protsess koosneb ühest või mitmest lõimest.

Lõim on lihts alt arvuti protsessorit läbiv programmi üks andmevoog. Iga rakendus loob oma ühe või mitu lõime olenev alt sellest, kuidas see töötab. Ilma multitegumtööta saab ühetuumaline protsessor korraga käsitleda ainult ühte lõime, nii et süsteem lülitub kiiresti lõimede vahel, et töödelda andmeid näiliselt samaaegselt.

Mitme tuuma omamise eeliseks on see, et süsteem suudab korraga käsitleda rohkem kui üht lõime. Iga tuum suudab käsitleda eraldi andmevoogu. See arhitektuur suurendab oluliselt samaaegseid rakendusi töötava süsteemi jõudlust. Kuna serverid kipuvad korraga käivitama paljusid samaaegseid rakendusi, töötati see tehnoloogia algselt välja ärikliendi jaoks, kuid kuna personaalarvutid muutusid keerukamaks ja multitegumtöö suurenes, said ka nemad kasu täiendavatest tuumadest.

Iga protsessi juhib aga esmane lõim, mis võib hõivata ainult ühe tuuma. Seega on sellise programmi, nagu mäng või videorenderdaja, suhteline kiirus rangelt piiratud põhilõime tarbitava tuuma võimekusega. Esmane lõime võib absoluutselt delegeerida sekundaarseid lõime teistele tuumadele, kuid mäng ei muutu kaks korda kiiremaks, kui kahekordistate tuumade arvu. Seega pole ebatavaline, et mäng kasutab täielikult ühte südamikku (põhilõime), kuid näeb sekundaarsete lõimede jaoks ainult osalist teiste tuumade kasutamist. Tuumade kahekordistamisega ei kaasne asjaolu, et esmane tuum on teie rakenduse kiiruse piiraja ja rakendused, mis on selle arhitektuuri suhtes tundlikud, toimivad paremini kui rakendused, mis seda ei ole.

Tarkvara sõltuvus

Kuigi mitmetuumaliste protsessorite kontseptsioon kõlab ahvatlev alt, on sellel tehnoloogial oluline hoiatus. Mitme protsessori tegelike eeliste nautimiseks peab arvutis töötav tarkvara olema kirjutatud nii, et see toetab mitmelõimega töötlemist. Ilma sellist funktsiooni toetava tarkvarata juhitakse lõime peamiselt läbi ühe tuuma, mis vähendab arvuti üldist tõhusust. Lõppude lõpuks, kui see saab neljatuumalises protsessoris töötada ainult ühes tuumas, võib tegelikult olla kiirem kasutada seda kahetuumalisel protsessoril, millel on suurem baassagedus.

Kõik suuremad praegused operatsioonisüsteemid toetavad mitme lõimega töötlemise võimalust. Kuid multithreading tuleb ka rakendustarkvarasse sisse kirjutada. Tarbijatarkvara mitme lõimega ühendamise tugi on aastate jooksul paranenud, kuid paljude lihtsate programmide puhul ei ole tarkvara ehituse keerukuse tõttu ikka veel mitmelõimelist tuge rakendatud. Näiteks ei näe meiliprogramm või veebibrauser tõenäoliselt nii palju kasu mitme lõimega töötlemisest kui graafika- või videotöötlusprogramm, kus arvuti töötleb keerulisi arvutusi.

Hea näide selle tendentsi selgitamiseks on vaadata tüüpilist arvutimängu. Enamik mänge nõuab mängus toimuva kuvamiseks mingit renderdusmootorit. Lisaks juhib mingi tehisintellekt mängu sündmusi ja tegelasi. Ühetuumalise puhul täidetakse mõlemad ülesanded nende vahel vahetades. See lähenemine ei ole tõhus. Kui süsteemil oleks mitu protsessorit, võiksid nii renderdus kui ka AI töötada eraldi tuumal – ideaalne olukord mitmetuumalise protsessori jaoks.

Kas 8 > 4 > 2?

Kahest tuumast kaugemale jõudmine pakub erinevaid eeliseid, arvestades, et iga arvuti ostja vastus sõltub tarkvarast, mida ta tavaliselt kasutab. Näiteks pakuvad paljud klassikalised mängud kahe ja nelja tuuma vahel siiski väikest jõudluse erinevust. Isegi tänapäevased mängud, millest mõned nõuavad või toetavad väidetav alt kaheksat südamikku, ei pruugi töötada paremini kui kuue tuumaga masin, millel on suurem baassagedus, arvestades, et põhilõime tõhusus reguleerib mitmelõimelise jõudluse tõhusust.

Teisest küljest näeb videot ümber kodeeriv videokodeerimisprogramm tõenäoliselt tohutut kasu, kuna üksiku kaadri renderdamise saab edastada erinevatele tuumadele ja seejärel tarkvara abil ühte voogu koondada. Seega on kaheksa südamiku omamine veelgi kasulikum kui neli. Põhimõtteliselt ei vaja esmane lõim suhteliselt rikkalikke ressursse; selle asemel võib see raske töö teha tütarlõimedega, mis maksimeerivad protsessori tuumasid.

Kellakiirused

Image
Image

Üldiselt tähendab suurem taktsagedus kiiremat protsessorit. Kellakiirused muutuvad ebamäärasemaks, kui arvestada kiirust mitme tuumaga võrreldes, kuna protsessorid purustavad tänu lisatuumadele mitu andmelõimi, kuid kõik need tuumad töötavad termiliste piirangute tõttu madalamal kiirusel.

Näiteks kahetuumaline protsessor võib toetada iga protsessori baassagedust 3,5 GHz, samas kui neljatuumaline protsessor võib töötada ainult sagedusel 3,0 GHz. Vaadates ainult ühte tuuma neist igaühel, on kahetuumaline protsessor 14 protsenti kiirem kui neljatuumaline. Seega, kui teil on programm, mis on ainult ühe lõimega, on kahetuumaline protsessor tegelikult tõhusam. Kui teie tarkvara saab kasutada kõiki nelja protsessorit, on neljatuumaline protsessor tegelikult umbes 70 protsenti kiirem kui see kahetuumaline protsessor.

Järeldused

Enamasti on suurema tuumaarvuga protsessor üldiselt parem, kui teie tarkvara ja tüüpilised kasutusjuhtumid seda toetavad. Enamasti on kahe- või neljatuumaline protsessor tavalise arvutikasutaja jaoks enam kui piisav. Enamik tarbijaid ei näe neljast protsessorituumast kaugemale jõudmisest mingit käegakatsutavat kasu, sest nii vähe spetsialiseerunud tarkvara kasutab seda ära. Suure tuumaarvuga protsessorite parim kasutusjuht on masinatega, mis täidavad keerulisi ülesandeid, nagu töölaua videotöötlus, mõned tipptasemel mänguvormid või keerulised teadus- ja matemaatikaprogrammid.

Vaadake meie mõtteid selle kohta, kui kiiret arvutit ma vajan? et saada parem ülevaade sellest, millist tüüpi protsessor teie arvutivajadustele kõige paremini sobib.

Soovitan: