es.phhsnews.com


es.phhsnews.com / ¿Por qué todos los núcleos de CPU tienen la misma velocidad en lugar de diferentes?

¿Por qué todos los núcleos de CPU tienen la misma velocidad en lugar de diferentes?


Si alguna vez hizo una comparación comparativa de una nueva CPU, puede haber notado que todos los núcleos parecen tener el velocidad en lugar de una combinación de diferentes. ¿Porqué es eso? La publicación de preguntas y respuestas SuperUser de hoy tiene la respuesta a la pregunta de un lector curioso.

La sesión de preguntas y respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación de sitios de preguntas y respuestas impulsada por la comunidad.

The Question

Lector superusuario Jamie quiere saber por qué los núcleos de CPU tienen la misma velocidad en lugar de diferentes:

En general, si está comprando una computadora nueva, debería determinar qué procesador comprar en función de la carga de trabajo esperada para la computadora . El rendimiento en los videojuegos tiende a estar determinado por la velocidad de núcleo único, mientras que las aplicaciones como la edición de video están determinadas por la cantidad de núcleos. En términos de lo que está disponible en el mercado, todas las CPU parecen tener aproximadamente la misma velocidad, siendo las principales diferencias más hilos o más núcleos.

Por ejemplo:

  • Intel Core i5-7600K, frecuencia base 3,80 GHz, 4 núcleos, 4 hilos
  • Intel Core i7-7700K, frecuencia base 4.20 GHz, 4 núcleos, 8 hilos
  • AMD Ryzen 5 1600X, frecuencia base 3.60 GHz, 6 núcleos, 12 hilos
  • AMD Ryzen 7 1800X, frecuencia base 3.60 GHz, 8 núcleos, 16 hilos

¿Por qué vemos este patrón de núcleos en aumento, pero todos los núcleos tienen la misma velocidad de reloj? ¿Por qué no hay variantes con diferentes velocidades de reloj? Por ejemplo, dos núcleos "grandes" y muchos núcleos pequeños.

En lugar de, digamos, cuatro núcleos a 4.0 GHz (es decir, 4 × 4 GHz, máximo 16 GHz), ¿qué tal una CPU con dos núcleos funcionando a 4.0 GHz? y cuatro núcleos funcionando a 2.0 GHz (es decir, 2 × 4.0 GHz + 4 × 2.0 GHz, 16 GHz máximo)? ¿Sería la segunda opción igual de buena en las cargas de trabajo de un solo subproceso, pero potencialmente mejor en las cargas de trabajo de subprocesos múltiples?

Pregunto esto como una pregunta general y no específicamente con respecto a las CPU enumeradas anteriormente o sobre una carga de trabajo específica. Tengo curiosidad por saber por qué el patrón es lo que es.

¿Por qué todos los núcleos de CPU tienen la misma velocidad en lugar de los diferentes?

El colaborador de Superconversión Answer

bwDraco tiene la respuesta para nosotros:

Esto se conoce como procesamiento múltiple heterogéneo (HMP) y es ampliamente adoptado por dispositivos móviles. En dispositivos basados ​​en ARM que implementan big.LITTLE, el procesador contiene núcleos con diferentes perfiles de rendimiento y potencia, es decir, algunos núcleos funcionan rápidamente pero consumen mucha energía (arquitectura más rápida y relojes más altos) mientras que otros son energéticamente eficientes pero lentos ( arquitectura más lenta y / o relojes más bajos). Esto es útil porque el uso de la energía tiende a aumentar desproporcionadamente a medida que aumenta el rendimiento una vez que se supera cierto punto. La idea aquí es obtener el rendimiento cuando lo necesite y la duración de la batería cuando no lo haga.

En las plataformas de escritorio, el consumo de energía es mucho menos problemático, por lo que no es realmente necesario. La mayoría de las aplicaciones esperan que cada núcleo tenga características de rendimiento similares, y los procesos de programación para los sistemas HMP son mucho más complejos que la programación para los sistemas tradicionales de multiprocesamiento simétrico (SMP). Técnicamente, Windows 10 admite HMP, pero principalmente para dispositivos móviles dispositivos que usan ARM big.LITTLE).

Además, la mayoría de los procesadores de escritorio y laptops actuales no están limitados térmica o eléctricamente hasta el punto en que algunos núcleos necesitan correr más rápido que otros, incluso para ráfagas cortas. Básicamente nos hemos topado con la pared de cuán rápido podemos hacer núcleos individuales, por lo que reemplazar algunos núcleos con otros más lentos no permitirá que los núcleos restantes funcionen más rápido.

Si bien hay algunos procesadores de escritorio que tienen uno o dos núcleos capaces de corriendo más rápido que los demás, esta capacidad se limita actualmente a ciertos procesadores Intel de gama alta (conocidos como Turbo Boost Max Technology 3.0) y solo implica un ligero aumento en el rendimiento de esos núcleos que pueden funcionar más rápido.

Mientras Ciertamente es posible diseñar un procesador x86 tradicional con núcleos grandes y rápidos y núcleos más pequeños y lentos para optimizar las cargas de trabajo con mucho subproceso, esto agregaría una complejidad considerable al diseño del procesador y es poco probable que las aplicaciones lo soporten adecuadamente.

Tome un procesador hipotético con dos núcleos rápidos de Kaby Lake (séptima generación) y ocho lentos núcleos Goldmont (Atom). Tendría un total de 10 núcleos, y las cargas de trabajo con muchos subprocesos optimizadas para este tipo de procesador podrían ver un aumento en el rendimiento y la eficiencia en comparación con un procesador Kaby Lake normal de cuatro núcleos. Sin embargo, los diferentes tipos de núcleos tienen niveles de rendimiento increíblemente diferentes, y los núcleos lentos ni siquiera admiten algunas de las instrucciones que admiten los núcleos rápidos, como AVX (ARM evita este problema al requerir que tanto el núcleo grande como el PEQUEÑO apoyen las mismas instrucciones ).

Una vez más, la mayoría de las aplicaciones de múltiples subprocesos basadas en Windows suponen que cada núcleo tiene el mismo o casi el mismo nivel de rendimiento y puede ejecutar las mismas instrucciones, por lo que este tipo de asimetría probablemente resultará en menos de rendimiento ideal, tal vez incluso bloqueos si utiliza instrucciones no compatibles con los núcleos más lentos. Aunque Intel podría modificar los núcleos lentos para agregar soporte de instrucción avanzada para que todos los núcleos puedan ejecutar todas las instrucciones, esto no resolvería problemas con el soporte de software para procesadores heterogéneos.

Un enfoque diferente al diseño de aplicaciones, más cercano a lo que probablemente estés pensando aproximadamente en su pregunta, usaría la GPU para la aceleración de porciones de aplicaciones altamente paralelas. Esto se puede hacer usando API como OpenCL y CUDA. En cuanto a una solución de un solo chip, AMD promueve soporte de hardware para aceleración de GPU en sus APU, que combina una CPU tradicional y una GPU integrada de alto rendimiento en el mismo chip, como la Arquitectura de Sistema Heterogéneo, aunque esto no ha visto mucha aceptación de la industria de algunas aplicaciones especializadas.


¿Tiene algo que agregar a la explicación? Suena apagado en los comentarios. ¿Desea leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Consulte el hilo de discusión completo aquí.

Crédito de la imagen: Mirko Waltermann (Flickr)


6 Cosas que debe saber sobre HomePod

6 Cosas que debe saber sobre HomePod

El altavoz inteligente HomePod de Apple es un pequeño dispositivo único que suena increíble para su tamaño, pero es probable que haya un puñado de cosas que usted no sabe sobre es lo que debes hacer. RELACIONADO: Cómo configurar Apple HomePod Por supuesto, probablemente ya conozcas algunas de las peculiaridades de HomePod, como que no tiene capacidades Bluetooth y que puedes solo use Apple Music si desea controlar la música con su voz.

(how-top)

Cómo hacer que Siri te entienda mejor

Cómo hacer que Siri te entienda mejor

Siri no es muy bueno para empezar, pero aquí hay algunas formas de mejorar al menos la experiencia de Siri y hacer que te entienda mejor cuando gritando comandos de voz. RELACIONADO: 26 Cosas realmente útiles que puedes hacer con Siri Probablemente sea mejor que vayas con Alexa o el Asistente de Google para tus necesidades de control de voz, pero lo conseguimos, si tienes un iPhone, usar Siri como tu principal asistente de voz simplemente tiene sentido.

(how-top)