Un procesador de doble núcleo para una computadora es una unidad central de procesamiento (CPU) que tiene dos núcleos separados en el mismo dado, cada uno con su propia caché. Esencialmente son dos microprocesadores en uno. Este tipo de CPU está ampliamente disponible en muchos fabricantes. También se han desarrollado otros tipos de procesadores de múltiples núcleos, incluidos los procesadores de cuatro núcleos con cuatro núcleos cada uno, los procesadores hexa-core de seis, los procesadores de ocho núcleos con ocho y los procesadores de muchos núcleos con un número aún mayor de núcleos.
En un procesador tradicional o de un solo núcleo, la CPU recibe cadenas de instrucciones que debe ordenar, ejecutar y luego almacenar selectivamente en su caché para una rápida recuperación. Cuando se requieren datos fuera de la caché, se recuperan a través del bus del sistema desde la memoria de acceso aleatorio (RAM) o desde los dispositivos de almacenamiento. Acceder a estos ralentiza el rendimiento a la velocidad máxima que el bus, la RAM o el dispositivo de almacenamiento permitirán, que es mucho más lenta que la velocidad de la CPU.
Esta situación se agrava cuando el usuario de la computadora es multitarea. En este caso, el procesador debe alternar entre dos o más conjuntos de flujos de datos y programas. Los recursos de la CPU se agotan y el rendimiento se ve afectado.
En un procesador de doble núcleo, cada núcleo maneja las cadenas de datos entrantes simultáneamente para mejorar la eficiencia. Así como dos cabezas son mejores que una, también lo son dos manos. Cuando un núcleo se está ejecutando, el otro puede acceder al bus del sistema o ejecutar su propio código.
Para utilizar un procesador de doble núcleo, el sistema operativo debe poder reconocer subprocesos múltiples y el software debe tener tecnología de subprocesos múltiples (SMT) simultánea escrita en su código. SMT permite el subproceso múltiple en paralelo, en el que los núcleos reciben instrucciones de subprocesos múltiples en paralelo. Sin SMT, el software reconocerá solo un núcleo. SMT también se usa con sistemas multiprocesador que son comunes a los servidores.
Un procesador de doble núcleo es diferente de un sistema multiprocesador. En este último, hay dos CPU independientes con sus propios recursos. En el primero, los recursos se comparten y los núcleos residen en el mismo chip. Un sistema multiprocesador es más rápido que un sistema con un procesador de doble núcleo, y un sistema de doble núcleo es más rápido que un sistema de un solo núcleo, cuando todo lo demás es igual.
Un valor atractivo de los procesadores de doble núcleo es que no requieren nuevas placas base, pero se pueden utilizar en placas existentes que cuentan con los enchufes correctos. Para el usuario promedio, la diferencia en el rendimiento será más notable durante la multitarea, hasta que más software sea compatible con SMT. Los servidores que ejecutan varios procesadores de doble núcleo verán un aumento apreciable en el rendimiento.