Núcleo de Procesador: ¿Qué es?, Hilos, y ¿Cómo Funcionan?
Existen un montón de alegorías para representar a los núcleos de un procesador o cores dentro de la CPU. No obstante, a las cosas por lo que son, un núcleo o Core es una unidad de procesamiento central independiente dentro de la misma CPU, las cuales son responsables de realizar todas las operaciones necesarias para ejecutar instrucciones, buscar datos, realizar operaciones (lógicas, aritméticas, almacenamiento, etc.).
Los núcleos dentro de la CPU cumplen con diversas funciones fundamentales, entre las cuales se encuentran las siguientes (las más relevantes a nuestro parecer):
- Ejecución de las instrucciones: Cada núcleo es capaz de recibir instrucciones de la memoria principal (DRAM) con la finalidad de realizar las operaciones (lógicas, aritméticas, almacenamiento, etc.) necesarias.
- Control de interrupciones: En palabras simples, una interrupción no es más que una solicitud a la cual hay que tomarle atención de inmediata, es decir, si el núcleo está ejecutando una instrucción, este procede a guardar el proceso de dicha instrucción para comenzar con la susodicha solicitud.
- Control del flujo de ejecución: Como lo dice su nombre, cada núcleo se encarga de organizar y administrar el orden de ejecución de las instrucciones, con la finalidad de que cada instrucción se ejecute en el momento debido.
- Acceso a las memorias: los núcleos son los encargados de acceder tanto a la memoria caché como a la memoria principal, esto con el fin de ejecutar instrucciones de la forma más rápida posible.
¿Cómo Funciona un Núcleo de Procesador?
Como se mencionó anteriormente, un núcleo es una unidad de procesamiento central independiente de la CPU; dichas unidades reciben instrucciones del software de turno mediante la memoria principal para ser decodificadas, para luego ser traducidas a las operaciones (lógicas, aritméticas, almacenamiento, etc.) correspondientes. Una vez comprendidas y ejecutadas las operaciones, toca analizar y buscar todos los datos necesarios para finalmente ejecutar dicha instrucción.
Durante todo este proceso, están presentes todos los componentes importantes del computador; es decir, el procesador, la memoria caché, la memoria principal, la unidad de almacenamiento y la tarjeta gráfica.
¿Cuántos Núcleos Necesita un CPU?
El número de núcleos dentro de un procesador dictará la cantidad de instrucciones que puede ejecutar a la vez; por lo tanto, a mayor número de núcleos, mayor será la fluidez y rendimiento de los programas ejecutados. Sin embargo, dicha fluidez y rendimiento dependerá mucho de qué tipo de programa se esté ejecutando y la cantidad de memoria DRAM que posea el ordenador.
Por ejemplo, para ejecutar tareas básicas como utilizar un navegador (Brave, Opera, Chrome, etc.), editar texto, jugar videojuegos (de bajos requisitos) o administrar alguna base de datos, no se necesitan más de dos núcleos, aunque siempre es recomendable tener cuatro en caso de necesitar ejecutar algún software de edición de videos o imágenes; no obstante, en el caso de querer ejecutar videojuegos medianamente modernos (medios requisitos) o modelar en 3D, sí es necesario tener de 6 a 8 núcleos. Por consiguiente, al momento de comprar un procesador, es indispensable saber a cuáles tareas será sometido.
Nota: No importa qué cantidad de núcleos o DRAM tenga su ordenador, si el software está mal optimizado, no hay nada que hacer.
¿Qué es Hyper-Threading o SMT?
El sub-procesamiento múltiple simultáneo (SMT) se refiere a la capacidad de la CPU para convertir cada uno de sus núcleos físicos en lógicos, esto con la finalidad de aumentar el rendimiento de los mismos. Hyper-threading es la forma de Intel de referirse a SMT.
¿Cómo Funciona?
Mediante SMT, cada núcleo físico se divide en múltiples núcleos lógicos (también llamados hilos lógicos), y cada núcleo lógico posee su propia cola de instrucciones y recursos, lo que permite la ejecución de numerosas instrucciones en un mismo núcleo; todo esto con la finalidad de aumentar el rendimiento, la tasa de respuesta y aprovechar los recursos (núcleos, cache, registros, etc.) de la CPU.
Nota: La cantidad puede variar según el modelo y fabricante.
¿Qué son los hilos?
Los hilos o threads son comúnmente confundidos con los núcleos, o, en ciertos casos, tienden a omitirse cuando se habla de estos. No obstante, los hilos son de suma importancia para el procesador, ya que estos ayudan a reducir los tiempos de espera entre cada instrucción; la reducción se logra mediante la división de las instrucciones, es decir, el núcleo divide y reparte una instrucción entre cada uno de sus hilos correspondientes. Aunque no lo parezca, este proceso aumenta en gran medida el rendimiento del ordenador.
Nota: cada núcleo de procesador tiene dos hilos, aunque este número puede variar.