Processadors de nuclis múltiples: és més sempre millor?

Taula de continguts:

Processadors de nuclis múltiples: és més sempre millor?
Processadors de nuclis múltiples: és més sempre millor?
Anonim

Afegir diversos nuclis a un sol processador ofereix avantatges importants gràcies a la naturalesa multitasca dels sistemes operatius moderns. Tanmateix, per a alguns propòsits, hi ha un límit pràctic superior al nombre de nuclis que produeixen millores en relació amb el cost d'afegir-los.

Avenços tecnològics multinúcleos

Image
Image

Els processadors de diversos nuclis estan disponibles als ordinadors personals des de principis dels anys 2000. Els dissenys multinúclis van abordar el problema dels processadors que arribaven al sostre de les seves limitacions físiques pel que fa a les seves velocitats de rellotge i amb quina eficàcia es podrien refredar i mantenir la precisió. En passar a nuclis addicionals en un sol xip de processador, els fabricants van evitar problemes amb la velocitat del rellotge multiplicant de manera efectiva la quantitat de dades que podia gestionar la CPU..

Quan es van llançar originalment, els fabricants oferien només dos nuclis en una sola CPU, però ara hi ha opcions per a quatre, sis i fins i tot 10 o més. A més d'afegir nuclis, les tecnologies de multiprocés simultània, com l'Hyper-Threading d'Intel, poden duplicar els nuclis virtuals que veu el sistema operatiu.

Processos i fils

Un procés és una tasca específica, com un programa, que s'executa en un ordinador. Un procés consta d'un o més fils.

Un fil és simplement un flux únic de dades d'un programa que passa pel processador de l'ordinador. Cada aplicació genera els seus propis fils o molts segons com s'executi. Sense multitasca, un processador d'un sol nucli només pot gestionar un sol fil alhora, de manera que el sistema canvia ràpidament entre els fils per processar les dades d'una manera aparentment concurrent.

L'avantatge de tenir diversos nuclis és que el sistema pot gestionar més d'un fil simultàniament. Cada nucli pot gestionar un flux de dades independent. Aquesta arquitectura augmenta molt el rendiment d'un sistema que executa aplicacions concurrents. Com que els servidors solen executar moltes aplicacions simultàniament alhora, la tecnologia es va desenvolupar originalment per al client empresarial, però a mesura que els ordinadors personals es van fer més complexos i augmentar la multitasca, també es van beneficiar de tenir nuclis addicionals.

Tot procés, però, es regeix per un fil primari que només pot ocupar un únic nucli. Així, la velocitat relativa d'un programa com un joc o un renderitzador de vídeo està molt limitada a la capacitat del nucli que consumeix el fil primari. El fil primari pot delegar absolutament fils secundaris a altres nuclis, però un joc no es torna el doble de ràpid quan dobleu els nuclis. Per tant, no és estrany que un joc maximitzi un nucli (el fil principal), però només vegi una utilització parcial d' altres nuclis per a fils secundaris. No hi ha cap quantitat de duplicació del nucli evita el fet que el nucli principal és un limitador de velocitat per a la vostra aplicació, i les aplicacions sensibles a aquesta arquitectura funcionaran millor que les que no ho són.

Dependència del programari

Tot i que el concepte de processadors de múltiples nuclis sembla atractiu, hi ha una advertència important sobre aquesta tecnologia. Perquè es puguin gaudir dels veritables avantatges dels múltiples processadors, el programari que s'executa a l'ordinador s'ha d'escriure per suportar el multithreading. Sense el programari que admeti aquesta funció, els fils s'executaran principalment a través d'un sol nucli, degradant així l'eficiència global de l'ordinador. Al cap i a la fi, si només es pot executar en un sol nucli en un processador de quatre nuclis, en realitat pot ser més ràpid executar-lo en un processador de dos nuclis amb velocitats de rellotge base més altes.

Tots els principals sistemes operatius actuals admeten la capacitat de multiprocés. Però el multithreading també s'ha d'escriure al programari d'aplicació. El suport del multithreading al programari de consum ha millorat amb els anys, però per a molts programes senzills, el suport multithreading encara no s'implementa a causa de la complexitat de la creació del programari. Per exemple, és probable que un programa de correu o un navegador web no tingui grans avantatges de la multiprocés tant com ho faria un programa d'edició de gràfics o de vídeo, on l'ordinador processa càlculs complexos.

Un bon exemple per explicar aquesta tendència és mirar un joc d'ordinador típic. La majoria dels jocs requereixen algun tipus de motor de renderització per mostrar el que està passant al joc. A més, algun tipus d'intel·ligència artificial controla esdeveniments i personatges del joc. Amb un sol nucli, ambdues tasques s'executen canviant entre elles. Aquest enfocament no és eficient. Si el sistema inclogués diversos processadors, la renderització i la IA podrien funcionar en un nucli independent, una situació ideal per a un processador de múltiples nuclis.

Is 8 > 4 > 2?

Anar més enllà de dos nuclis presenta avantatges diversos, ja que la resposta per a qualsevol comprador d'ordinadors depèn del programari que utilitza habitualment. Per exemple, molts jocs clàssics encara ofereixen poca diferència de rendiment entre dos i quatre nuclis. Fins i tot els jocs moderns, alguns dels quals suposadament requereixen o admeten vuit nuclis, potser no funcionen millor que una màquina de sis nuclis amb una velocitat de rellotge base més alta, atès que l'eficàcia del fil primari regeix l'eficiència del rendiment multifil..

D' altra banda, un programa de codificació de vídeo que transcodifica vídeo probablement tindrà grans avantatges, ja que la representació de fotogrames individuals es pot passar a diferents nuclis i després agrupar-los en un sol flux mitjançant el programari. Així, tenir vuit nuclis serà encara més beneficiós que tenir quatre. En essència, el fil primari no necessita recursos relativament rics; en comptes d'això, pot treure el treball dur a fils fills que maximitzen els nuclis del processador.

Velocitats de rellotge

Image
Image

En termes generals, una velocitat de rellotge més alta significarà un processador més ràpid. Les velocitats de rellotge es tornen més nebuloses quan es tenen en compte les velocitats en relació amb diversos nuclis perquè els processadors trituran diversos fils de dades gràcies als nuclis addicionals, però cadascun d'aquests nuclis funcionarà a velocitats més baixes a causa de les restriccions tèrmiques.

Per exemple, un processador de dos nuclis pot suportar velocitats de rellotge base de 3,5 GHz per a cada processador, mentre que un processador de quatre nuclis només pot funcionar a 3,0 GHz. Només mirant un sol nucli a cadascun d'ells, el processador de doble nucli és un 14 per cent més ràpid que el de quatre nuclis. Així, si teniu un programa que només té un sol fil, el processador de doble nucli és realment més eficient. De nou, si el vostre programari pot utilitzar els quatre processadors, el processador de quatre nuclis serà en realitat un 70 per cent més ràpid que el processador de dos nuclis.

Conclusions

En la seva majoria, tenir un processador de nucli més gran és millor si el vostre programari i casos d'ús típics ho admeten. En la seva majoria, un processador de doble nucli o quatre nuclis serà més que suficient per a un usuari d'ordinador bàsic. La majoria dels consumidors no veuran cap avantatge tangible d'anar més enllà de quatre nuclis de processador perquè tan poc programari no especialitzat s'aprofita. El millor cas d'ús per als processadors de gran nombre de nuclis es refereix a màquines que realitzen tasques complexes, com ara l'edició de vídeo d'escriptori, algunes formes de jocs de gamma alta o programes complicats de ciència i matemàtiques.

Consulta els nostres pensaments sobre quina velocitat necessito un ordinador? per tenir una millor idea de quin tipus de processador s'adapta millor a les vostres necessitats informàtiques.

Recomanat: