Dual-core
# Dual-core

Equivalente de doble núcleo. Término relacionado con el hallazgo de dos núcleos o CPU en un mismo chip de procesador, tanto en el mismo encapsulado de silicio como en silicios separados aunque dentro del mismo chip.

## Dual Core en la historia

La nomenclatura Dual-Core, así como la creación de dichos procesadores, proviene de una nueva gama de procesadores Opteron de 64 bits de AMD. Originalmente desarrollados por esta empresa, se exhibieron en agosto de 2004 montando el procesador en los servidores HP Proliant DL585. Estos procesadores salieron al mercado en abril de 2005 junto a la gama de procesadores de escritorio Athlon 64 x2. El primer modelo de procesador Opteron (de solo 1 núcleo) ya se fabricó pensando en una futura ampliación de núcleos.

IBM anunció la existencia en julio de 2005 de su gama G5, el Powerpc 970MP Antares, basado en un RISC Dual, aunque el consumo de estos procesadores es elevado y no se plantearán pasarlo de 2 GHz por núcleo. Los rumores de un doble núcleo del PowerPC ya corrieron el año anterior sobre la aparición de dicho modelo.

Intel, por su parte, hizo un Dual Core con el modelo Pentium-D (su primer Dual Core), que eran básicamente 2 Pentium 4 dentro del mismo encapsulado de cerámica, aunque no en el mismo encapsulado de silicio, por lo que tienen que unirse por Front Side Bus. Más tarde, Intel remodelaría con Core Dúo y después con Core 2 Dúo. Nuevamente, Intel apuesta por una gama nueva de Dual-Core basados en la eficiencia de su siguiente modelo Core.

## Funcionamiento de un Dual Core

### Cómo está diseñado

Existen dos núcleos idénticos en un mismo circuito integrado o chip, trabajando a la misma velocidad, aunque pudiendo ajustarse cada una según la carga y controlador que lo gobierne. Por defecto, si no se le indica bajo un kernel de UNIX/Linux o no se le instalan controladores bajo Windows, trabajan al máximo rendimiento. En el caso de Linux, el demonio ACPID puede ajustar automáticamente la tasa de la CPU para bajar el consumo/calor generado, pero esto puede deshabilitarse tanto por un nuevo kernel como por el uso de cpufreq-select. En el caso de otros sistemas UNIX, como BSD, la tasa lo ajusta automáticamente el demonio powerd.

La aparición del doble núcleo redujo la velocidad punta en cada uno de ellos, (por ejemplo, un núcleo sencillo de 3GHz fue reemplazado por un núcleo dual de 2,2GHz x2), pero esta reducción podría no verse afectada directamente en el rendimiento, ya que depende del tipo de núcleo de CPU que tenga instalado, así como el nivel de caché y velocidad de FSB. También importa, como se comenta en el siguiente punto, si la aplicación soporta el trabajo conjunto (en paralelo) con varias CPU y si el sistema operativo reparte bien la faena. Más adelante, la frecuencia de reloj fue aumentando, hasta sobrepasar los 3GHz por núcleo.

Desde sus inicios con Opteron, AMD ya diseñó los núcleos para poder ampliarlos, sin que los chips de silicio estén separados y, por lo tanto, para que trabajen conjuntamente a la velocidad del procesador. Este es un punto a favor de AMD, ya que siempre ha creado núcleos unidos, cosa que la competencia tuvo que desarrollar rápidamente.

La siguiente etapa en la evolución de las CPU para equipos domésticos se conoce como Quad Core o núcleo cuádruple, unidades centrales de proceso con cuatro núcleos interconectados, aunque AMD posee una versión en su gama Phenom de 3 núcleos, más económico que el de 4. Y, para variar, poco a poco van sacando procesadores con más núcleos. AMD en estas fechas ya comercializa procesadores (Opteron, para servidores) de 6 y 12 núcleos, y se plantea para el 2012 procesadores con 16 núcleos.

### Carga

Las CPU de doble núcleo, dependiendo del sistema operativo que los gobierne, reparten la carga de transacciones aumentando la velocidad de proceso y el rendimiento. También y según la aplicación, pueden trabajar ambos núcleos (o los que tenga un procesador) para desarrollar cálculos paralelamente, ya que se trata de un clúster de núcleos (véase: PVM, MPI). A diferencia de la tecnología HyperThreading, que no es más que una simulación de dos núcleos virtuales sobre uno real, Dual Core son dos núcleos reales.

