En Prime95, ¿por qué las FFT pequeñas generan la mayor cantidad de calor, a pesar de la CPU al 100% para todas las opciones?

9

Acabo de construir una nueva PC Skylake , y voy a ver un poco de overclocking con Prime95 como probador de estrés.

Funciona bien en el uso normal, pero con Prime95 estoy notando un poco de aceleración de la CPU bajo ciertas cargas.

Si los 4 núcleos (8 hilos) están atascados al 100% independientemente, ¿por qué la configuración Small FFT en Prime95 alcanza una temperatura más alta que la opción 'Blend'?

ChrisA
fuente

Respuestas:

13

El código vectorizado, especialmente AVX, aumenta naturalmente la salida de calor de la CPU porque el procesador debe funcionar a un voltaje más alto para ejecutar estas instrucciones. Las FFT pequeñas requieren menos memoria que el modo de mezcla, por lo que el procesador pasa más tiempo procesando datos y menos tiempo esperando datos.

  • La arquitectura x86-64 proporciona amplias capacidades de procesamiento de vectores , especialmente en los últimos procesadores. El procesamiento vectorial permite que las aplicaciones realicen operaciones matemáticas en múltiples elementos de datos a la vez, y es utilizado por muchas aplicaciones informáticas más nuevas para aumentar el rendimiento del procesamiento.

  • El código vectorizado, especialmente las instrucciones AVX utilizadas por Prime95, requiere que el procesador funcione a un voltaje más alto de lo normal. Esto da como resultado un consumo de energía y una producción de calor mayor que la que se experimenta con cargas de trabajo normales. Por esta razón, Intel advierte que las cargas pesadas AVX pueden hacer que el procesador acelere o no mantenga las velocidades de reloj Turbo Boost completas (nota 1):

    Las Extensiones de vector avanzadas Intel® (Intel® AVX) están diseñadas para lograr un mayor rendimiento para ciertas operaciones de punto entero y flotante. Debido a las características variables de potencia del procesador, el uso de instrucciones AVX puede hacer que a) algunas partes funcionen a una frecuencia inferior a la frecuencia nominal yb) algunas partes con la tecnología Intel® Turbo Boost 2.0 para no alcanzar ninguna o las frecuencias turbo máximas.

    Intel explica esto con más detalle en este documento técnico . En particular, señala:

    Intel AVX está diseñado para lograr un mayor rendimiento para ciertas operaciones de entero y de punto flotante. El uso de estas instrucciones puede hacer que los procesadores funcionen a menos de la frecuencia TDP marcada. Estas reducciones en la frecuencia ocurren porque las instrucciones Intel AVX de alta potencia requieren voltaje y corriente eléctrica adicionales.

    • Supongo por qué es necesario impulsar el núcleo V para las instrucciones de AVX es que las unidades de ejecución de AVX son más complejas que las otras partes del procesador, lo que resulta en etapas de canalización correspondientes que tardan más en completarse (consulte esta respuesta para obtener más información técnica sobre tuberías) y otros aspectos del diseño del procesador). Si una etapa particular de la tubería es lenta, la velocidad máxima de reloj de todo el procesador está limitada, ya que cada etapa de la tubería debe terminar dentro de cada ciclo de reloj.

    • Por la misma razón, los voltajes más altos aumentan las frecuencias máximas alcanzables cuando el overclocking (los transistores pueden cambiar más rápido a voltajes más altos), el aumento del voltaje ayuda a garantizar que las etapas de tubería más largas puedan terminar a tiempo.

  • El modo Small FFT utiliza solo elementos de datos más pequeños que pueden caber en la memoria caché de la CPU , a diferencia del modo Blend, que opera en valores pequeños y grandes que pueden no caber en la memoria caché. Debido a que el acceso a la memoria es lento en relación con el simple procesamiento de datos, el procesador pasará menos tiempo procesando datos en modo Fusión, reduciendo la producción de calor. Las FFT pequeñas no implican ningún acceso a la memoria, lo que genera más trabajo real para la CPU, lo que aumenta el consumo de energía y la producción de calor.

bwDraco
fuente
Gracias @DragonLord, esto hace que los diferentes modos Prime95 sean muy claros. ¿Amplificaría su respuesta para explicar por qué el monitor de recursos lee el 100% en ambos casos? ¿Por qué no lee menos del 100% en el modo Blend, por ejemplo, si está esperando datos más tiempo que en el modo Small FFT?
ChrisA
1
La CPU ocupada esperando memoria todavía se informa como ocupada al sistema operativo, según tengo entendido.
bwDraco