stringtranslate.com

Escalado de frecuencia dinámico

El escalado dinámico de frecuencia (también conocido como aceleración de CPU ) es una técnica de administración de energía en la arquitectura de computadoras mediante la cual la frecuencia de un microprocesador se puede ajustar automáticamente "sobre la marcha" dependiendo de las necesidades reales, para conservar energía y reducir la cantidad de calor generado por el chip. El escalado de frecuencia dinámico ayuda a conservar la batería de los dispositivos móviles y a disminuir el costo de enfriamiento y el ruido en entornos informáticos silenciosos , o puede ser útil como medida de seguridad para sistemas sobrecalentados (por ejemplo, después de un overclocking deficiente ).

El escalado dinámico de frecuencia casi siempre aparece junto con el escalado dinámico de voltaje , ya que las frecuencias más altas requieren voltajes de suministro más altos para que el circuito digital produzca resultados correctos. El tema combinado se conoce como escalado dinámico de voltaje y frecuencia ( DVFS ).

La aceleración del procesador también se conoce como " underclocking automático ". El overclocking automático (aumento) también es técnicamente una forma de escalado dinámico de frecuencia, pero es relativamente nuevo y generalmente no se analiza con la aceleración.

Operación

La potencia dinámica ( potencia de conmutación ) disipada por un chip es C·V 2 ·A·f , donde C es la capacitancia que se conmuta por ciclo de reloj, V es el voltaje , A es el factor de actividad [1] que indica el número promedio de conmutaciones. eventos por ciclo de reloj por los transistores en el chip (como una cantidad sin unidades) y f es la frecuencia del reloj. [2]

Por lo tanto, el voltaje es el principal determinante del uso de energía y calefacción. [3] El voltaje requerido para un funcionamiento estable está determinado por la frecuencia a la que se sincroniza el circuito y puede reducirse si también se reduce la frecuencia. [4] Sin embargo, la potencia dinámica por sí sola no representa la potencia total del chip, ya que también existe la potencia estática, que se debe principalmente a varias corrientes de fuga. Debido al consumo de energía estática y al tiempo de ejecución asintótico, se ha demostrado que el consumo de energía del software muestra un comportamiento energético convexo, es decir, existe una frecuencia de CPU óptima en la que se minimiza el consumo de energía. [5] La corriente de fuga se ha vuelto cada vez más importante a medida que los tamaños de los transistores se han vuelto más pequeños y los niveles de voltaje umbral se reducen. Hace una década, la potencia dinámica representaba aproximadamente dos tercios de la potencia total del chip. La pérdida de energía debido a corrientes de fuga en las CPU y SoC contemporáneos tiende a dominar el consumo total de energía. En el intento de controlar la potencia de fuga, las compuertas metálicas de alta k y las compuertas eléctricas han sido métodos comunes.

El escalado de voltaje dinámico es otra técnica de conservación de energía relacionada que a menudo se usa junto con el escalado de frecuencia, ya que la frecuencia a la que puede funcionar un chip está relacionada con el voltaje de funcionamiento.

La eficiencia de algunos componentes eléctricos, como los reguladores de voltaje, disminuye al aumentar la temperatura, por lo que el uso de energía puede aumentar con la temperatura. Dado que el aumento del uso de energía puede aumentar la temperatura, los aumentos en el voltaje o la frecuencia pueden aumentar las demandas de energía del sistema incluso más de lo que indica la fórmula CMOS, y viceversa. [6] [7]

Interfaz estándar

ACPI 1.0 (1996) define una forma para que una CPU pase a "estados C" inactivos, pero no define ningún sistema de escalado de frecuencia.

ACPI 2.0 (2000) introduce un sistema de estados P (estados de potencia-rendimiento) que un procesador puede usar para comunicar sus posibles configuraciones de frecuencia-potencia al sistema operativo. Luego, el sistema operativo establece la velocidad según sea necesario cambiando entre estos estados. SpeedStep, PowerNow!/Cool'n'Quiet y PowerSaver funcionan en estados P. Hay un límite de 16 estados como máximo. [8]

ACPI 5.0 (2011) introduce el control colaborativo del rendimiento del procesador (CPPC), exponiendo cientos de niveles de rendimiento al sistema operativo para su selección en forma de un "nivel de rendimiento" abstraído de la frecuencia. Esta abstracción proporciona cierta libertad para que el procesador ajuste su funcionamiento de otras formas además de la frecuencia. [9] [10] [11]

Escalado de frecuencia autónomo

Varias CPU modernas pueden realizar un escalado de frecuencia de forma autónoma, utilizando un rango de nivel de rendimiento y una sugerencia de "preferencia de eficiencia/rendimiento" del sistema operativo.

Impacto en el rendimiento

El escalado dinámico de frecuencia reduce la cantidad de instrucciones que un procesador puede emitir en un período de tiempo determinado, lo que reduce el rendimiento. Por lo tanto, generalmente se utiliza cuando la carga de trabajo no está vinculada a la CPU.

El escalamiento dinámico de frecuencia por sí solo rara vez vale la pena como forma de conservar la potencia de conmutación. Ahorrar la mayor cantidad posible de energía también requiere un escalado dinámico de voltaje, debido al componente V 2 y al hecho de que las CPU modernas están fuertemente optimizadas para estados inactivos de bajo consumo de energía. En la mayoría de los casos de voltaje constante, es más eficiente correr brevemente a la velocidad máxima y permanecer en un estado de inactividad profunda durante más tiempo (llamado "carrera hacia el ralentí" o sprint computacional), que correr a una frecuencia de reloj reducida durante mucho tiempo y sólo permanece brevemente en un estado de inactividad leve. Sin embargo, reducir el voltaje junto con la velocidad del reloj puede cambiar esas compensaciones.

Una técnica relacionada pero opuesta es el overclocking , mediante el cual el rendimiento del procesador aumenta aumentando la frecuencia (dinámica) del procesador más allá de las especificaciones de diseño del fabricante.

Una diferencia importante entre los dos es que en los sistemas de PC modernos, el overclocking se realiza principalmente a través del bus frontal (principalmente porque el multiplicador normalmente está bloqueado), pero el escalado dinámico de frecuencia se realiza con el multiplicador . Además, el overclocking suele ser estático, mientras que el escalado de frecuencia dinámico es siempre dinámico. El software a menudo puede incorporar frecuencias overclockeadas en el algoritmo de escalado de frecuencia, si los riesgos de degradación del chip son permisibles.

Soporte entre proveedores

Intel

La tecnología de aceleración de CPU de Intel , SpeedStep , se utiliza en sus líneas de CPU móviles y de escritorio.

AMD

AMD emplea dos tecnologías diferentes de aceleración de CPU. La tecnología Cool'n'Quiet de AMD se utiliza en sus líneas de procesadores de escritorio y servidores. El objetivo de Cool'n'Quiet no es ahorrar batería, ya que no se utiliza en la línea de procesadores móviles de AMD, sino producir menos calor, lo que a su vez permite que el ventilador del sistema gire a velocidades más lentas. lo que resulta en un funcionamiento más fresco y silencioso, de ahí el nombre de la tecnología. PowerNow de AMD ! La tecnología de aceleración de CPU se utiliza en su línea de procesadores móviles, aunque algunas CPU compatibles, como la AMD K6-2 +, también se pueden encontrar en computadoras de escritorio.

AMD PowerTune y AMD ZeroCore Power son tecnologías de escalado de frecuencia dinámico para GPU .

Tecnologías VÍA

Los procesadores de VIA Technologies utilizan una tecnología denominada LongHaul (PowerSaver), mientras que la versión de Transmeta se denominó LongRun .

El chip AsAP 1 de 36 procesadores se encuentra entre los primeros chips de procesador multinúcleo que admiten una operación de reloj completamente sin restricciones (requiriendo sólo que las frecuencias estén por debajo del máximo permitido), incluidos cambios arbitrarios en frecuencia, inicios y paradas. El chip AsAP 2 de 167 procesadores es el primer chip de procesador multinúcleo que permite a los procesadores individuales realizar cambios totalmente ilimitados en sus propias frecuencias de reloj.

Según las especificaciones ACPI , el estado de funcionamiento C0 de una CPU moderna se puede dividir en los llamados estados "P" (estados de rendimiento) que permiten la reducción de la velocidad del reloj y estados "T" (estados de aceleración) que Acelera aún más una CPU (pero no la velocidad de reloj real) insertando señales STPCLK (detener el reloj) y, por lo tanto, omitiendo los ciclos de trabajo.

BRAZO

Diferentes sistemas basados ​​en ARM en chip proporcionan aceleración de CPU y GPU.

Ver también

Tecnologías de ahorro de energía:

Tecnologías que mejoran el rendimiento:

Referencias

  1. ^ K. Moiseev, A. Kolodny y S. Wimer (septiembre de 2008). "Ordenamiento de señales con potencia óptima consciente del tiempo". Transacciones ACM sobre automatización del diseño de sistemas electrónicos . 13 (4): 1–17. doi :10.1145/1391962.1391973. S2CID  18895687.
  2. ^ Rabaey, JM (1996). Circuitos Integrados Digitales . Prentice Hall.
  3. ^ Victoria Zhislina (19 de febrero de 2014). "¿Por qué ha dejado de crecer la frecuencia de la CPU?". Intel.
  4. ^ https://www.usenix.org/legacy/events/hotpower/tech/full_papers/LeSueur.pdf [ URL básica PDF ]
  5. ^ Karel De Vogeleer; Memmi, Gerard; Jouvelot, Pierre; Coelho, Fabien (2014). "La regla de la convexidad de energía/frecuencia: modelado y validación experimental en dispositivos móviles". arXiv : 1401,4655 [cs.OH].
  6. ^ Mike Chin. "Tarjeta gráfica Asus EN9600GT Silent Edition". Revisión de PC silenciosa . pag. 5 . Consultado el 21 de abril de 2008 .
  7. ^ Mike Chin (19 de marzo de 2008). "80 Plus amplía el podio de Bronce, Plata y Oro". Revisión de PC silenciosa . Consultado el 21 de abril de 2008 .
  8. ^ "Especificación de interfaz de alimentación y configuración avanzada, revisión 3.0, sección 2.6 Definiciones del estado de rendimiento del procesador y del dispositivo" (PDF) . ACPI.info . 2 de septiembre de 2004. p. 23. Archivado desde el original (PDF) el 28 de noviembre de 2015 . Consultado el 19 de agosto de 2015 .
  9. ^ "Control colaborativo del rendimiento del procesador (CPPC): la documentación del kernel de Linux". www.kernel.org .
  10. ^ "8.4. Declaración de procesadores". Documentación de la especificación ACPI 6.4 .
  11. ^ "Descripción general sobre el ajuste de potencia y rendimiento para Windows Server". aprender.microsoft.com . 29 de agosto de 2022.
  12. ^ x86_energy_perf_policy(8)  –  Manual del programador de Linux – Administración y comandos privilegiados
  13. ^ "Controlador de escalamiento del rendimiento de la CPU intel_pstate: documentación del kernel de Linux". www.kernel.org .
  14. ^ "Controlador de escalamiento del rendimiento de la CPU amd-pstate: documentación del kernel de Linux". docs.kernel.org .