Meervoudige kernprosessors: Is alles altyd beter?

Meerdere kernverwerkers is al meer as 'n dekade beskikbaar in persoonlike rekenaars. Die rede hiervoor is dat die verwerkers fisiese beperkings tref in terme van hul kloksnelheid en hoe effektief hulle afgekoel kan word en steeds akkuraatheid behou. Deur die verskuiwing na ekstra kern op die enkelverwerker-chip te verhoed, het vervaardigers die probleme met die kloksnelhede vermy deur die hoeveelheid data wat deur die SVE verwerk kan word, effektief te vermenigvuldig. Toe hulle oorspronklik vrygelaat is, was dit net twee kerne in 'n enkele SVE, maar nou is daar opsies vir vier, ses en selfs agt. Daarbenewens is daar Intel se Hyper-Threading-tegnologie wat feitlik die kerne verdubbel wat die bedryfstelsel sien. Met twee kernkernen in 'n enkele verwerker het ons altyd tasbare voordele te danke aan die multitasking-aard van moderne bedryfstelsels. U kan immers op die web blaai of 'n verslag tik terwyl 'n anti-virusprogram op die agtergrond loop. Die werklike vraag vir baie mense kan wees as om meer as twee regtig voordelig is en so ja, hoeveel?

threading

Voordat jy in die voordele en nadele van verskeie verwerkers ingaan, is kerne belangrik om die konsep van threading te verstaan. 'N draad is eenvoudig 'n enkele stroom data van 'n program deur die verwerker op die rekenaar. Elke aansoek genereer sy eie of meervoudige drade afhangende van hoe dit hardloop. Met multitasking kan 'n enkele kernverwerker slegs 'n enkele draad op 'n keer hanteer, sodat die stelsel vinnig wissel tussen die drade om die data op 'n skynbaar gelyktydige wyse te verwerk.

Die voordeel van verskeie kerne is dat die stelsel meer as een draad kan hanteer. Elke kern kan 'n aparte stroom data hanteer. Dit verhoog die prestasie van 'n stelsel wat gelyktydige toepassings uitvoer, aansienlik. Aangesien bedieners op 'n gegewe tydstip veelvuldige toepassings loop, is dit oorspronklik daar ontwikkel, maar as persoonlike rekenaars meer kompleks en multitasking geword het, het hulle ook voordeel getrek uit ekstra kerne.

Sagteware afhanklike

Alhoewel die konsep van meervoudige kernprosessors baie aantreklik lyk, is daar 'n belangrike voorbehoud vir hierdie vermoë. Ten einde die ware voordele van die verskeie verwerkers te sien, moet die sagteware wat op die rekenaar uitgevoer word, geskryf word om multithreading te ondersteun. Sonder die sagteware wat so 'n kenmerk ondersteun, sal die drade hoofsaaklik deur 'n enkele kern hardloop, waardeur die doeltreffendheid verlaag word. As dit net kan loop op 'n enkele kern in ' n vierkern-verwerker , kan dit eintlik vinniger wees om dit op 'n tweedelige verwerker te bestuur met hoër basiese klokspoed.

Gelukkig het al die groot huidige bedryfstelsels multithreading-vermoëns. Maar die multithreading moet ook in die toepassingsprogrammatuur geskryf word. Gelukkig is die ondersteuning vir multithreading in verbruikersprogrammatuur aansienlik verbeter, maar vir baie eenvoudige programme word multithreading-ondersteuning nog steeds nie geïmplementeer nie as gevolg van die kompleksiteit. Byvoorbeeld, 'n posprogram of webblaaier sal waarskynlik nie groot voordele vir multithreading sien nie, soos 'n grafiese of videobewerkingsprogram waar komplekse berekeninge deur die rekenaar gedoen word.

'N Goeie voorbeeld om dit te verduidelik, is om na 'n tipiese PC-speletjie te kyk. Die meeste speletjies benodig 'n vorm van die maak van enjin om te wys wat in die spel gebeur. Daarbenewens is daar 'n soort kunsmatige intelligensie om gebeure en karakters in die spel te beheer. Met 'n enkele kern moet beide van hierdie funksies funksioneer deur tussen die twee te skakel. Dit is nie noodwendig doeltreffend nie. As die stelsel verskeie verwerkers het, kan die weergawes en AI elk op 'n aparte kern loop. Dit lyk soos 'n ideale situasie vir 'n meervoudige kernverwerker.

Dit is 'n uitstekende voorbeeld van hoe verskeie drade 'n program bevoordeel kan word. Maar in dieselfde voorbeeld is vier verwerkerkerns beter as twee? Dit is 'n baie moeilike vraag om te beantwoord aangesien dit hoogs afhanklik is van die sagteware. Byvoorbeeld, baie speletjies het nog steeds baie min prestasieverskil tussen twee en vier kern. Daar is in wese geen speletjies wat tasbare voordele van meer as vier verwerkerskerns sien nie. Gaan terug na die voorbeelde van e-pos of webblaaie, selfs quad core sal dus geen werklike voordeel hê nie. Aan die ander kant, 'n video-kodering program wat transkodeer video sal waarskynlik groot voordele sien, aangesien individuele raamweergawe aan verskillende kerne oorgedra kan word en dan in 'n enkele stroom deur die sagteware versamel word. Dus met agt kernse sal selfs meer voordelig wees as om vier te hê.

Kloksnelheid

Een ding wat kortliks genoem is, is klokspoed. Die meeste mense is nog bekend met die feit dat hoe hoër die klokspoed, hoe vinniger die verwerker sal wees. Klokspoed word nare wanneer jy ook met verskeie kerne handel. Dit het te doen met die feit dat die verwerker nou verskeie data drade kan verwerk as gevolg van die ekstra kern, maar elkeen van die kerne sal teen laer spoed as gevolg van die termiese beperkings loop.

Byvoorbeeld, 'n dual-core verwerker kan basiese kloksnelhede van 3.5 GHz vir elke verwerker hê terwyl 'n vierkernprosessor slegs op 3,0 GHz kan hardloop. Net na 'n enkele kern op elk van hulle, die dual-core verwerker kan ongeveer veertien persent vinniger as op die kwad-kern. Dus, as jy 'n program het wat net enkeldraad is, is die dual-core verwerker eintlik beter. Dan, as jy iets het wat al vier verwerkers kan gebruik, soos video-transcoding, sal die quad-core verwerker eintlik sowat sewentig persent vinniger wees as die dual-core verwerker.

So, wat beteken dit alles? Wel, jy moet noukeurig na die verwerker kyk en ook die sagteware om 'n goeie idee te kry van hoe dit oor die algemeen sal optree. Oor die algemeen is 'n meervoudige kernverwerker 'n beter keuse, maar dit beteken nie noodwendig dat jy beter algehele prestasie sal hê nie.

gevolgtrekkings

Vir die grootste deel, met 'n hoër kernteller verwerker is oor die algemeen 'n goeie ding, maar dit is 'n baie ingewikkelde saak. Vir die grootste deel, sal 'n dual core of quad core verwerker meer as genoeg krag vir 'n basiese rekenaar gebruiker wees. Die meerderheid verbruikers sien geen tasbare voordele van om verder as vier verwerker kerne te gaan nie, aangesien daar so min sagteware is wat voordeel daaruit kan trek. Die enigste mense wat sulke hoë kerntellingprosessors moet oorweeg, is dié wat take soos desktop-videobewerking of ingewikkelde wetenskap- en wiskundeprogramme gaan doen. As gevolg hiervan, ons beveel lesers aan om seker te maak hoe vinnig van 'n rekenaar ek nodig het? artikel om 'n beter idee te kry van watter tipe verwerker die beste by hul rekenaarbehoeftes pas.