Ajuste de la administración de energía del procesador (PPM) del plan de energía Equilibrado de Windows Server

Desde Windows Server 2008, Windows Server proporciona tres planes de energía: Equilibrado, Alto rendimiento y Ahorro de energía. El plan de energía Equilibrado es la opción predeterminada cuyo objetivo es ofrecer la mejor eficiencia energética para un conjunto de cargas de trabajo de servidor típicas. Este tema describe las cargas de trabajo usadas para determinar la configuración predeterminada del esquema Equilibrado de las últimas versiones de Windows.

Si ejecuta un sistema de servidor con unas características de carga de trabajo o con unos requisitos de rendimiento y energía notablemente diferentes a los de estas cargas de trabajo, quizá desee considerar ajustar la configuración de energía predeterminada, lo que significa crear un plan de energía personalizado. Una fuente de información de optimización útil son las Consideraciones de energía del hardware del servidor. Como alternativa, puede decidir que el plan de energía de Alto rendimiento es el correcto para su entorno, a sabiendas de que probablemente tendrá un impacto energético significativo a cambio de algo de nivel de capacidad de respuesta mayor.

Importante

Debe aprovechar las directivas de energía que se incluyen con Windows Server a menos que tenga una necesidad específica de crear una personalizada y tenga una comprensión muy buena de que los resultados variarán según las características de la carga de trabajo.

Metodología de optimización de energía del procesador de Windows

Cargas de trabajo examinadas

Las cargas de trabajo se seleccionan para cubrir un conjunto de cargas de trabajo "típicas" del mejor esfuerzo de Windows Server. Obviamente, este conjunto no pretende ser representativo de toda la variedad de entornos de servidor reales.

El ajuste de cada directiva de energía se basa en los datos de las cinco cargas de trabajo siguientes iniciadas desde Windows Server 2008

  • Carga de trabajo del servidor web de IIS

    Para optimizar la eficiencia energética de las plataformas que ejecutan el servidor web de IIS se usa un banco de pruebas interno de Microsoft llamado Web Fundamentals. La configuración contiene un servidor web y varios clientes que simulan el tráfico de acceso web. La distribución de páginas web dinámicas, estáticas activas (en memoria) y estáticas en frío (acceso al disco requerido) se basa en estudios estadísticos de servidores de producción. Para aprovechar al máximo los núcleos de CPU del servidor (uno de los extremos del espectro examinado), la configuración necesita recursos de disco y red lo suficientemente rápidos.

  • Cargas de trabajo de la base de datos del servidor SQL

    El banco de pruebas TPC-E es popular para el análisis del rendimiento de la base de datos. Se usa para generar una carga de trabajo OLTP para las optimizaciones de ajuste de PPM. Esta carga de trabajo tiene una E/S de disco notable y, por tanto, tiene un requisito de alto rendimiento para el sistema de almacenamiento y el tamaño de la memoria.

  • Carga de trabajo del servidor de archivos

    Un banco de pruebas desarrollado por Microsoft llamado FSCT se usa para generar una carga de trabajo del servidor de archivos SMB. Crea un conjunto de archivos grande en el servidor y usa muchos sistemas cliente (reales o virtualizados) para generar operaciones de apertura, cierre, lectura y escritura de archivos. La combinación de operaciones se basa en estudios estadísticos de servidores de producción. Estresa los recursos de CPU, de disco y de red.

  • SPECpower: carga de trabajo de JAVA

    SPECpower_ssj2008 es la primera prueba comparativa de SPEC estándar del sector que evalúa conjuntamente las características de potencia y rendimiento. Es una carga de trabajo de Java del lado del servidor con distintos niveles de carga de CPU. No necesita muchos recursos de disco o red, pero tiene ciertas necesidades de ancho de banda de memoria. Casi toda la actividad de CPU se realiza en modo de usuario. La actividad en modo kernel no tiene mucho impacto en las características de potencia y rendimiento del banco de pruebas, excepto en las decisiones de administración de energía.

  • Carga de trabajo del servidor de aplicaciones

    El banco de pruebas SAP-SD se usa para generar una carga de trabajo del servidor de aplicaciones. Se usa una configuración de dos niveles, con la base de datos y el servidor de aplicaciones en el mismo host de servidor. Esta carga de trabajo también utiliza el tiempo de respuesta como una métrica de rendimiento, que difiere de otras cargas de trabajo examinadas. Por lo tanto, se usa para comprobar el impacto de los parámetros PPM en la capacidad de respuesta. Sin embargo, no pretende ser representativo de todas las cargas de trabajo de producción sensibles a la latencia.

Todas la bancos de prueba excepto SPECpower se diseñaron originalmente para el análisis de rendimiento y, por tanto, se crearon para ejecutarse en niveles de carga máxima. Sin embargo, los niveles de carga media a ligera son más comunes en los servidores de producción reales y son más atractivos para las optimizaciones de planes Equilibrados. Ejecutamos intencionadamente los bancos de pruebas en distintos niveles de carga desde el 100 % hasta el 10 % (en pasos del 10 %) mediante el uso de varios métodos de limitación, como por ejemplo, mediante la reducción del número de usuarios o clientes activos.

Las cargas de trabajo anteriores usan la capacidad de proceso como métrica de rendimiento para el ajuste. Durante el estado estable, la capacidad de proceso no cambia con diferentes usos hasta que el sistema se sobrecarga (aproximadamente el 100 % del uso). Como resultado, el plan de alimentación Equilibrado favorece bastante la potencia con la minimización de la frecuencia del procesador la maximización del uso. A partir de Windows Server 2016, el requisito de tiempo de respuesta rápida ha aumentado considerablemente. Aunque Microsoft sugirió que los usuarios cambien al plan de energía de Alto rendimiento cuando necesiten un tiempo de respuesta rápido, algunos usuarios no quieren perder la ventaja de energía en los niveles de carga desde ligeros a medios. Por lo tanto, el ajuste de PPM de Windows Server también incluye cargas de trabajo sensibles al tiempo de respuesta para el ajuste.

  • GeekBench 3

    GeekBench 3 es un banco de pruebas de procesador multiplataforma que separa las puntuaciones para el rendimiento de un solo núcleo y las de varios núcleos. Simula un conjunto de cargas de trabajo, incluidas cargas de trabajo enteras (cifrados, compresiones, procesamiento de imagen, etc.), cargas de trabajo de punto flotante (modelado, fractal, enfoque de imagen, desenfoque de imágenes, etc.) y cargas de trabajo de memoria (streaming).

    El tiempo de respuesta es una medida importante en su cálculo de puntuación. En nuestro sistema examinado, el plan de energía Equilibrado predeterminado de Windows Server 2008 tiene aproximadamente un 18 % de regresión en pruebas de núcleo único y aproximadamente un 40 % de regresión en pruebas de varios núcleos en comparación con el plan de energía de Alto rendimiento. Windows Server 2016 quita estas regresiones.

  • DiskSpd

    Diskspd es una herramienta de línea de comandos desarrollada por Microsoft para realizar bancos de pruebas de almacenamiento. Se usa ampliamente para generar varias solicitudes contra los sistemas de almacenamiento para el análisis de rendimiento del almacenamiento.

    Configuramos un [clúster de conmutación por error] y usamos Diskspd para generar E/S aleatorias, secuenciales y de lectura y escritura en los sistemas de almacenamiento locales y remotos con diferentes tamaños de E/S. Nuestras pruebas muestran que el tiempo de respuesta de E/S es sensible a la frecuencia del procesador en diferentes planes de energía. El plan de energía Equilibrado de Windows Server 2008 predeterminado podría duplicar el tiempo de respuesta del plan de energía de Alto rendimiento en determinadas cargas de trabajo. El plan Equilibrado de Windows Server 2016 elimina la mayoría de las regresiones.

Importante

A partir de procesadores Intel [Broadwell] que ejecutan Windows Server 2016, la mayoría de las decisiones de administración de energía del procesador se toman en el procesador en lugar del nivel del sistema operativo para lograr una adaptación más rápida a los cambios de carga de trabajo. Los parámetros PPM heredados que el sistema operativo usa tienen un impacto mínimo en las decisiones de frecuencia reales, excepto para indicarle al procesador si debe favorecer la potencia o el rendimiento o limitar las frecuencias mínimas y máximas. Por lo tanto, los resultados del ajuste PPM aquí mencionados solo se observan en los sistemas anteriores al Broadwell.

Configuraciones de hardware

Para cada versión de Windows, los servidores de producción se usan en el proceso de análisis y optimización del plan de energía. En algunos casos, las pruebas se realizaron en sistemas de preproducción cuya programación de lanzamiento coincidía con la de la próxima versión de Windows.

Dado que la mayoría de los servidores se venden con 1 a 4 sockets de procesador y que es menos probable que los servidores de escalado vertical tengan la eficiencia energética como principal preocupación, las pruebas de optimización del plan de energía se ejecutan principalmente en sistemas de 2 sockets y 4 sockets. La cantidad de recursos de RAM, disco y red para cada prueba se elige para permitir que cada sistema se ejecute hasta llegar a su capacidad completa, considerando las restricciones de costes que normalmente estarían presentes en los entornos de servidor reales, como mantener las configuraciones a niveles razonables.

Importante

Aunque el sistema puede ejecutarse en su carga máxima, normalmente optimizamos para niveles de carga menores, ya que a los servidores que se ejecutan constantemente en sus niveles de carga máxima se les aconsejaría usar el plan de energía Alto rendimiento a menos que la eficiencia energética sea una prioridad alta.

Métricas

Todos los bancos de pruebas usan la capacidad de proceso como una métrica de rendimiento. El tiempo de respuesta se considera un requisito SLA para esas cargas de trabajo, excepto para las SAP, donde es una métrica principal. Por ejemplo, la ejecución de un banco de pruebas se considera “válida” si el tiempo de respuesta medio o máximo es menor que un valor determinado.

Por tanto, el análisis del ajuste de PPM también utiliza la capacidad de proceso como su métrica de rendimiento. En el nivel de carga más alto (100 % del uso de CPU), nuestro objetivo es que la capacidad de proceso no disminuya más de un pocos números del porcentaje gracias a las optimizaciones de administración de energía. Pero la cuestión principal es maximizar la eficiencia energética (tal como se define a continuación) en niveles de carga medio y bajo.

power efficiency formula

La ejecución de los núcleos de CPU con frecuencias más bajas reduce el consumo de energía. Sin embargo, las frecuencias más bajas normalmente disminuye la capacidad de proceso y aumenta el tiempo de respuesta. En el plan de energía Equilibrado, hay una compensación intencionada de la capacidad de respuesta y la eficiencia energética. En las pruebas de carga de trabajo de SAP, así como en los SLA de tiempo de respuesta en las otras cargas de trabajo, asegúrese de que el aumento del tiempo de respuesta no supere un umbral determinado (5 % por ejemplo) para estas cargas de trabajo específicas.

Nota

Si la carga de trabajo es muy sensible al tiempo de respuesta, el sistema debe cambiar al plan de energía de Alto rendimiento o cambiar el plan de energía Equilibrado en una frecuencia de aumento muy agresiva cuando se está ejecutando.

Parámetros predeterminados del plan de energía Equilibrado de Windows Server

Desde los procesadores Intel Broadwell que ejecutan Windows Server 2016, la administración de energía de Windows Server usa los estados P controlados por hardware (HWP) de Intel de forma predeterminada en los sistemas Intel. HWP es una nueva capacidad para un control de rendimiento de hardware y software cooperativo. Cuando HWP está habilitado, la CPU supervisa la actividad y la escalabilidad y selecciona la frecuencia a escala de tiempo del hardware. El sistema operativo ya no necesita supervisar la actividad y seleccionar la frecuencia en intervalos regulares. El cambio a HWP tiene varias ventajas, como la respuesta rápida, un mejor conocimiento de la eficiencia energética del hardware de los procesadores y otros componentes bajo TDP.

Para el sistema HWP, Windows sigue teniendo la opción de establecer los estados de procesador mínimos y máximos para proporcionar restricciones. También puede usar el parámetro depreferencia de rendimiento de energía (EPP) para establecer el equilibrio entre la potencia y el rendimiento. Un valor inferior favorece el rendimiento y un valor superior favorece la potencia. El valor predeterminado es 50, esto es para equilibrar la potencia y el rendimiento.

Parámetro Windows Server 2012 R2 y versiones anteriores Windows Server 2016 y versiones más recientes
HWP habilitado N/D Intel Broadwell+
Preferencia de rendimiento de energía No aplicable 50

Para los sistemas de Intel anteriores a Broadwell o para cualquier sistema que no tenga compatibilidad con HWP (por ejemplo, los servidores AMD), Windows todavía tiene el control total y determina la frecuencia del procesador en función de los parámetros PPM. Los parámetros PPM predeterminados de Windows Server 2012 R2 favorecen tanto la potencia que podría impactar significativamente el rendimiento de las cargas de trabajo, especialmente la carga de trabajo intensa. Se cambiaron cuatro parámetros PPM en Windows Server 2016 RS2 para permitir que la frecuencia aumente más rápido sobre el nivel de cargo medio.

Parámetro Windows Server 2016 (RS1) y versiones anteriores Windows Server 2016 (RS2) y versiones más recientes
Umbral de aumento del rendimiento del procesador 90 60
Umbral de reducción del rendimiento del procesador 80 40
Tiempo de aumento del rendimiento del procesador 3 1
Directiva de aumento del rendimiento del procesador Single Ideal

Los algoritmos de administración de energía basados en el uso de la CPU podrían dañar la latencia de las cargas de trabajo de E/S o de uso intensivo de red. Un procesador lógico podría estar inactivo mientras espera la finalización de E/S de disco o los paquetes de red, lo que hace que el uso general de la CPU sea bajo. Para resolver este problema, Windows Server 2019 detecta automáticamente el período de capacidad de respuesta de E/S y eleva el nivel de frecuencia a un nivel superior. Este comportamiento puede ajustarse mediante los siguientes parámetros sin importar si el sistema usa HWP o no.

Parámetro Antes de WIndows Server 2019 Windows Server 2019 y versiones más recientes
Umbral de activación de la invalidación de capacidad de respuesta del procesador N/D 10
Umbral de desactivación de la invalidación de capacidad de respuesta del procesador N/D 5
Tiempo de activación de la invalidación de la capacidad de respuesta del procesador N/D 1
Tiempo de desactivación de la invalidación de la capacidad de respuesta del procesador N/D 3
Límite de la preferencia de rendimiento energético de la invalidación de la capacidad de respuesta del procesador N/D 100
Mínimo de rendimiento de la invalidación de la capacidad de respuesta del procesador N/D 100

Sugerencias de ajuste personalizadas

Si las características principales de la carga de trabajo difieren significativamente de las cinco cargas de trabajo usadas para el ajuste de PPM del plan de energía Equilibrado predeterminado, puede experimentar al modificar uno o varios parámetros PPM y así encontrar la mejor opción para su entorno.

Debido al número y la complejidad de los parámetros, esto puede ser una tarea complicada, pero si busca el mejor equilibrio entre el consumo de energía y la eficacia de la carga de trabajo para su entorno particular, puede que el esfuerzo merezca la pena.

El ajuste completo de parámetros PPM ajustables se encuentra en Ajuste de la administración de energía del procesador. Algunos de los parámetros de energía más simples para empezar podrían ser:

Para el sistema habilitado HWP:

  • Preferencia de rendimiento de la energía: los valores más grandes favorecen más la potencia que el rendimiento

Para el sistema sin HWP:

  • Umbral de aumento del rendimiento del procesador y del tiempo de aumento del rendimiento del procesador: los valores mayores ralentizan la respuesta del rendimiento a una mayor actividad

  • Umbral de reducción del rendimiento del procesador: los valores más grandes aceleran la respuesta de energía en períodos inactivos

  • Tiempo de reducción del rendimiento del procesador: los valores más grandes reducen gradualmente el rendimiento durante períodos de inactividad

  • Directiva de aumento del rendimiento del procesador: la directiva "única" ralentiza la respuesta del rendimiento a una actividad mayor y sostenida. La directiva "Variación máxima" reacciona rápidamente a una mayor actividad

  • Directiva de disminución del rendimiento del procesador: la directiva "única" disminuye el rendimiento gradualmente durante períodos de inactividad más largos. La directiva "Variación máxima" reduce la energía muy rápidamente al entrar en un período de inactividad

Importante

Antes de iniciar los experimentos, primero debe comprender las cargas de trabajo, lo que le ayudará a tomar las opciones adecuadas del parámetro PPM y reducir el esfuerzo de ajuste.

Descripción de los requisitos de rendimiento y energía de alto nivel

Si la carga de trabajo es "en tiempo real" (por ejemplo, susceptible a problemas o a un impacto visible del usuario final) o tiene un requisito de capacidad de respuesta muy ajustado (por ejemplo, una corretaje de existencias) y si el consumo de energía no es un criterio principal para el entorno, sencillamente solo deba cambiar al plan de energía de Alto rendimiento. De lo contrario, debe comprender los requisitos del tiempo de respuesta de las cargas de trabajo y ajustar los parámetros PPM para obtener la mejor eficiencia energética posible que siga cumpliendo esos requisitos.

Descripción de las características de la carga de trabajo subyacentes

Debe conocer las cargas de trabajo y diseñar los conjuntos de parámetros del experimento para el ajuste. Por ejemplo, si las frecuencias de los núcleos de CPU necesitan aumentarse rápidamente (quizás tenga una carga de trabajo intensa con períodos de inactividad significativos, pero necesita una capacidad de respuesta muy rápida cuando se produzca una nueva transacción), es posible que la directiva de aumento del rendimiento del procesador tenga que establecerse en "Variación máxima" (lo que, como el nombre implica, dispara la frecuencia del núcleo de CPU a su valor máximo en lugar de avanzar por un período de tiempo).

Si la carga de trabajo es muy intensa, se puede reducir el intervalo de comprobación de PPM para que la frecuencia de CPU empiece a avanzar antes tras llegar una ráfaga. Si la carga de trabajo no tiene simultaneidad de subprocesos elevada, se puede habilitar la detención de núcleos para forzar que la carga de trabajo se ejecute en un número menor de núcleos, lo que también podría mejorar potencialmente las proporciones de aciertos de caché del procesador.

Si solo desea aumentar las frecuencias de CPU en niveles de uso medio (es decir, niveles de carga de trabajo no ligeros), los umbrales de aumento o disminución del rendimiento del procesador se pueden ajustar para no reaccionar hasta que se observen determinados niveles de actividad.

Descripción de los comportamientos periódicos

Puede haber diferentes requisitos de rendimiento para las horas del día y la noche o durante los fines de semana, o puede haber diferentes cargas de trabajo que se ejecuten en momentos diferentes. En este caso, un conjunto de parámetros PPM podría no ser óptimo para todos los períodos de tiempo. Ya que se pueden diseñar varios planes de energía personalizados, es posible incluso hacer un ajuste para distintos períodos de tiempo y cambiar entre planes de energía a través de scripts u otros medios de configuración dinámica del sistema.

De nuevo, esto agranda la complejidad del proceso de optimización, por lo que es una cuestión de cuánto provecho se obtendrá de este tipo de ajuste, que probablemente tendrá que repetirse cuando haya actualizaciones de hardware o cambios de carga de trabajo importantes.

Este es el motivo por el que Windows proporciona un plan de energía Equilibrado desde un principio, ya que en muchos casos probablemente no merece la pena hacer el esfuerzo del ajuste manual para una carga de trabajo específica en un servidor específico.

Vea también