¡Nuevo mecanismo de control de frecuencia de CPU en Linux!

Find AI Tools
No difficulty
No complicated process
Find ai tools

¡Nuevo mecanismo de control de frecuencia de CPU en Linux!

Tabla de Contenidos

  1. Introducción
  2. Visión general del control de frecuencia de la CPU en Linux
    • Marco de trabajo de CPU Mainframe
    • Control de frecuencia existente en el kernel
    • Control de frecuencia basado en ACPI
    • Control de frecuencia basado en MSR
  3. Diseño y implementación del nuevo mecanismo de control de frecuencia de la CPU en Linux
    • Controladores de CPU existentes en AMD
    • CPU Power Management Unit (PMU) en AMD
    • Implementación del controlador MDP State Driver
    • Funcionalidades del controlador MDP State
    • Interfaz de usuario para el control del MDP State
  4. Optimización y pruebas de rendimiento
    • Pruebas de rendimiento con benchmarks
    • Optimización de energía y rendimiento en el kernel
    • Herramientas de prueba y seguimiento
  5. Desafíos y futuras mejoras del controlador MDP State
    • Problemas de rendimiento y energía en benchmarks específicos
    • Cobertura de plataformas de CPU existentes
    • Optimización de energía para juegos y aplicaciones de alto rendimiento
  6. Conclusiones y próximos pasos

Introducción

¡Hola a todos! Buenas tardes. Mi nombre es Ray Huang y soy parte del equipo de MD Learners. Me complace presentarles hoy una charla sobre un nuevo mecanismo de control de frecuencia de la CPU en Linux llamado MDP State. Esta es mi primera presentación en la Linux Comp y me siento honrado de tener la oportunidad de compartir con todos ustedes este nuevo desarrollo.

En los últimos 10 años, nuestro equipo se ha centrado en el desarrollo y optimización de componentes multiplataforma en el kernel de Linux, incluyendo el CPU, la gestión de energía y el soporte gráfico de GPU. Durante el año pasado, nos hemos dedicado a desarrollar una solución de control de frecuencia de la CPU y hemos trabajado en la validación y revisión del código por parte de la comunidad de Kernel. Finalmente, hemos logrado que nuestro conjunto inicial de parches sea aceptado en el kernel versión 5.17.

Hoy me gustaría compartir con ustedes los detalles técnicos del diseño e implementación de esta solución de control de frecuencia de la CPU. También hablaré sobre las pruebas de rendimiento realizadas y los desafíos que hemos encontrado. Sin más preámbulos, ¡comencemos!

Visión general del control de frecuencia de la CPU en Linux

Antes de profundizar en los detalles del MDP State, vamos a repasar brevemente cómo funciona el control de frecuencia de la CPU en el kernel de Linux.

Marco de trabajo de CPU Mainframe

El kernel de Linux utiliza el marco de trabajo CPUFreq para controlar las frecuencias de la CPU. Este marco de trabajo utiliza políticas de gobierno basadas en el horario y la carga del sistema para controlar los cambios de frecuencia de la CPU. Las políticas de gobierno más comunes son "ondemand" y "performance". La política "ondemand" ajusta la frecuencia de la CPU en función de la carga del sistema, mientras que la política "performance" establece la frecuencia más Alta posible en todo momento.

Control de frecuencia existente en el kernel

En el pasado, se ha utilizado el control de frecuencia basado en ACPI en los procesadores Intel antes de Sandy Bridge. Sin embargo, los procesadores AMD actuales todavía utilizan el control de frecuencia basado en ACPI CPUFreq. Este controlador no proporciona una solución eficiente en términos de rendimiento y eficiencia energética en las plataformas de CPU modernas.

Control de frecuencia basado en MSR

En lugar de utilizar el control de frecuencia basado en ACPI, hemos desarrollado un nuevo controlador llamado MDP State que utiliza los registros MSR del procesador como un mecanismo de control de frecuencia más eficiente y de baja latencia. El uso de los registros MSR nos permite implementar una interfaz que se adapta mejor a los procesadores AMD y mejora el rendimiento y la eficiencia energética.

Diseño y implementación del nuevo mecanismo de control de frecuencia de la CPU en Linux

Ahora pasemos a discutir los detalles técnicos del controlador MDP State y cómo se ha implementado en el kernel de Linux.

Controladores de CPU existentes en AMD

En los procesadores AMD, el control de energía a nivel de plataforma se realiza mediante el firmware del Sistema de Administración del Motor (SMU). El SMU controla las frecuencias de la CPU y la GPU, así como otras configuraciones relacionadas con la administración de energía. En el pasado, se ha utilizado el control de frecuencia basado en ACPI CPUFreq en los procesadores AMD. Sin embargo, este enfoque no aprovecha al máximo las capacidades de control de frecuencia que ofrece el SMU.

CPU Power Management Unit (PMU) en AMD

El SMU del procesador AMD proporciona una unidad de administración de energía avanzada conocida como PMU (CPU Power Management Unit). Esta unidad es responsable de medir el consumo de energía de la CPU y controlar las frecuencias y voltajes en función de los objetivos de rendimiento y eficiencia energética.

Implementación del controlador MDP State Driver

Para aprovechar al máximo las capacidades de control de frecuencia del SMU, hemos creado el controlador MDP State. Este controlador reemplaza al controlador ACPI CPUFreq en las plataformas de CPU AMD y utiliza el rango de frecuencia basado en cppc en lugar de los estados 3p tradicionales de ACPI para controlar la frecuencia de la CPU. Esto nos permite utilizar políticas de gobierno kernel, como el horario, para calcular los valores de rendimiento óptimos. También utilizamos el programador CFS para optimizar la administración de energía y la frecuencia de la CPU.

Funcionalidades del controlador MDP State

El controlador MDP State proporciona varias funcionalidades clave para la administración de frecuencias de la CPU. Utiliza interfaces estándar del kernel de Linux para permitir cambios de frecuencia y rendimiento según sea necesario. También implementa nuevas funciones y estructuras de datos para almacenar información específica de AMD y realizar cálculos de rendimiento y frecuencia en tiempo real.

Interfaz de usuario para el control del MDP State

Además de la funcionalidad del controlador MDP State en el kernel, hemos desarrollado herramientas de control de usuario que permiten a los usuarios ajustar la configuración del MDP State y monitorear el rendimiento y la frecuencia de la CPU. Estas herramientas se basan en la biblioteca CPU Power Tool, que proporciona una interfaz de usuario fácil de usar para administrar la configuración del controlador MDP State.

Optimización y pruebas de rendimiento

Una parte importante del desarrollo del controlador MDP State fue la optimización y las pruebas de rendimiento. Realizamos pruebas exhaustivas utilizando diversos benchmarks de CPU para evaluar el rendimiento y la eficiencia energética del controlador MDP State en comparación con el controlador ACPI CPUFreq.

Pruebas de rendimiento con benchmarks

Utilizamos varios benchmarks de CPU populares, como T-Bench y Speedometer, para evaluar el rendimiento del controlador MDP State en diferentes cargas de trabajo. Obtuvimos resultados prometedores, con mejoras significativas en el rendimiento en comparación con el controlador ACPI CPUFreq en ciertos casos.

Optimización de energía y rendimiento en el kernel

Además de las pruebas de rendimiento con benchmarks, también nos enfocamos en la optimización de energía y rendimiento a nivel de kernel. Realizamos ajustes y mejoras en el codebase del kernel para garantizar un funcionamiento eficiente y optimizado del controlador MDP State en diferentes plataformas de CPU AMD.

Herramientas de prueba y seguimiento

Para facilitar las pruebas y el seguimiento del rendimiento del controlador MDP State, desarrollamos herramientas de prueba y seguimiento que permiten a los desarrolladores y usuarios monitorear en tiempo real la frecuencia y el rendimiento de la CPU. Estas herramientas, como MDP State Tracer, proporcionan información valiosa para la depuración y optimización del rendimiento.

Desafíos y futuras mejoras del controlador MDP State

Aunque el controlador MDP State ha demostrado ser prometedor en términos de rendimiento y eficiencia energética, aún enfrentamos algunos desafíos y hay áreas en las que se pueden realizar mejoras.

Problemas de rendimiento y energía en benchmarks específicos

Durante nuestras pruebas de rendimiento con diferentes benchmarks de CPU, encontramos algunos resultados inconsistentes y problemas de rendimiento en ciertos benchmarks específicos. Estamos investigando estas cuestiones y trabajando en soluciones para garantizar un rendimiento óptimo en todas las situaciones.

Cobertura de plataformas de CPU existentes

Aunque hemos logrado soportar una variedad de plataformas de CPU AMD con el controlador MDP State, aún queda trabajo por hacer para garantizar que todas las plataformas admitidas se beneficien de este nuevo mecanismo de control de frecuencia. Estamos trabajando en la expansión de la cobertura de plataformas existentes y garantizando que el controlador funcione de manera óptima en todas ellas.

Optimización de energía para juegos y aplicaciones de alto rendimiento

Uno de nuestros objetivos es optimizar la administración de energía y el rendimiento en aplicaciones de juego y alto rendimiento, como Steam Deck. Estamos trabajando en mejoras específicas para estas aplicaciones y explorando formas de maximizar el rendimiento y la eficiencia energética en este escenario.

En resumen, el controlador MDP State ha demostrado ser un avance significativo en el control de frecuencias de la CPU en Linux. A través de pruebas exhaustivas y optimizaciones, hemos logrado mejorar el rendimiento y la eficiencia energética en varias plataformas de CPU AMD. A pesar de los desafíos y áreas de mejora, estamos entusiasmados con el potencial de este nuevo mecanismo de control de frecuencias y seguiremos trabajando para perfeccionarlo y expandir su uso en diferentes escenarios.

¡Muchas gracias por su atención y estoy abierto a responder cualquier pregunta que puedan tener!

Are you spending too much time looking for ai tools?
App rating
4.9
AI Tools
100k+
Trusted Users
5000+
WHY YOU SHOULD CHOOSE TOOLIFY

TOOLIFY is the best ai tool source.