Si alguna vez te has preguntado cuantos procesadores puede tener un ordenador en su interior y qué factores limitan la cantidad de ellos. Entonces estáis de suerte por el hecho que os vamos a responder a esta aparentemente banal, pero interesante pregunta. Al mismo aprenderéis que es lo que limita ese número y que cuenta como tal y lo que no.
Antes de nada, hemos de aclarar que antes de 2006, con el lanzamiento de los Core 2 de Intel, todas las CPU eran de un solo núcleo y, por tanto, de un procesador. Es decir, la tendencia histórica ha sido llamar procesador o CPU al chip central de nuestro ordenador, pero la realidad deberíamos llamarlo el chip de procesadores o las CPUs. ¿El motivo? Cada uno de los núcleos es un procesador en sí mismo, así pues, si decimos que un AMD Ryzen o un Intel Core tienen 6 núcleos, estamos diciendo que tienen un 6 procesadores realmente, aunque se encuentren en el mismo chip.
La confusión generalizada entre núcleo y procesador
La idea es que todos ellos trabajen en conjunto, así pues, en las partes de los programas que pueden ejecutarse en paralelo veremos a varios núcleos colaborando entre sí una división del trabajo eficiente. En cambio, habrá parte del código en las que se pedirá que un solo núcleo muestre su potencial. Es por ello que en cada generación de procesadores no solo se busca tener el mayor número de núcleos posible, sino también mejorar el rendimiento de cada uno de ellos individualmente.
Por otro lado, dado que todos ellos tienen un acceso común a la misma memoria RAM, disponen de una memoria caché de último nivel, común entre todos ellos, que los comunica con un controlador de memoria común. Esto les permite tener coherencia con la memoria y saber que cualquier cambio en un programa que haya hecho un núcleo sea conocido por el resto y puedan trabajar el unísono sobre los mismos programas y aplicaciones.
Los otros procesadores en el sistema
En tu PC no solo existe la CPU, sino también otro tipo de núcleos y procesadores de apoyo. Estos no se suelen contar debido a no estar dentro del chip principal en la placa base, pero forman parte del conjunto global del ordenador. Por lo que si somos estrictos, a la pregunta de cuantos procesadores tiene mi PC, deberíamos contar también aquellos que se encuentran en el resto de componentes también.
¿Cuántos procesadores puede tener un PC?
Pues dependerá del tipo de ordenador del que hablemos. Hemos de partir de tres puntos importantes que son los que diferencian los procesadores de servidor de los de PC convencional.
- Cuanto más núcleos, entonces de mayor tamaño será el procesador y, por tanto, se llegará el punto en que su coste será prohibitivo para el mercado de sobremesa.
- Más núcleos requieren más comunicación con la memoria, desde que los pines para interactuar con la RAM están siempre en la periferia, esto significará también un chip más grande.
- Y obviamente también una alta cantidad de núcleos significarán un mayor consumo.
Por lo que a la pregunta de cuantos procesadores puede tener un ordenador, la primera respuesta es simple: tantos como se permita colocar en el chip. El otro problema es la intercomunicación interna entre ellos. Si tenemos pocos núcleos, cuatro a lo sumo, podemos usar intercomunicación directa, pero a partir de cierta cifra eso complica la circuitería, ya que esta es siempre el cuadrado del número de núcleos.
Es por ello que en sistemas de 6 núcleos en adelante se usan intercomunicaciones en anillo, mucho más simples de colocar, pero con la contrapartida de que al añadir más núcleos aumenta la latencia entre ellos y puede llegar a ser contraproducentes al rendimiento. En todo caso hay un límite que se puede colocar y dependerá del tamaño asignado al chip, el nodo de fabricación y la potencia eléctrica asignada. Decisiones que se toman nada más empezar la fase de diseño.
Lo que no son procesadores
Un procesador se define por el hecho de que puede ejecutar las tres etapas principales a la hora de procesar una instrucción. Es decir, captación (Fetch), decodificación (Decode) y ejecución (Execute). Lo decimos por el hecho de que es común en el marketing de tarjetas gráficas llamar a las ALU que se encargan de la última etapa como núcleos CUDA o Stream Processors. Es decir, es como si contáramos una parte de un motor de explosión como si fuese un motor en sí mismo. ¿Verdad que es un sinsentido?
Por otro lado, muchas aplicaciones a la hora de contar los hilos de ejecución de un procesador los cuentan como núcleos y a la pregunta de cuantos procesadores hay los muestran de forma errónea. Esto es debido a que cuentan los hilos de ejecución. Y la trampa está en que los núcleos modernos tienen partes de las unidades de captación y decodificación duplicadas para cambiar de tarea al vuelo si la principal se ha quedado atascada. Es decir, es lo mismo que cuando tu PC se queda haciendo una tarea con la que no puedes interactuar y mientras esperas a que termine aprovechas para hacer otras cosas.
Ambos elementos no responden a la pregunta de cuantos procesadores hay por el hecho de que no son unidades completas, tanto si hablamos de una CPU como de una GPU. Por cierto, en estas últimas deberíamos contar como procesadores o núcleos la cantidad de Compute Units en AMD o SM en NVIDIA, que son las que se encargan de las tres etapas principales.