En el Kernel de Linux 6.3 se integrara una opción para medir con precisión los ruidos de hardware

Tux, la mascota del Kernel de Linux

El kernel de Linux es el elemento principal de los sistemas operativos (SO) Linux, y es la interfaz fundamental entre el hardware de una computadora y sus procesos.

Hace poco fue lanzada la versión 6.2 del Kernel de Linux, la cual llega con una serie de características bastante buenas, ademas de añadir mejoras de compatibilidad con hardware y sobre todo que continúa con las mejoras de «Rust For Linux», sin duda una versión pasajera que abre bastantes ventanas a diversas mejoras para Linux 6.3 (si quieres conocer más sobre el lanzamiento del Kernel 6.2, puedes revisar los detalles en esta publicación).

Para lo que será la próxima versión del Kernel de Linux se están ajustando diversas características que se realizan mediante las confirmaciones y de las cuales una de las características importantes que se ha agregado a Linux 6.3 es la nueva herramienta rtla hwnoise.

rtla hwnoise (ruido de hardware de análisis de Linux en tiempo real) es una herramienta para detectar y cuantificar el ruido relacionado con el hardware. Recupera el resumen periódico del rastreador de osnoise en ejecución con las interrupciones deshabilitadas.

Al deshabilitar las interrupciones y la programación de subprocesos, solo se permite el ruido relacionado con las interrupciones y el hardware no enmascarables.

De acuerdo con la descripción realizada por los mantenedores de la herramienta, esta última también permite configuraciones de trazadores de ruido y la recopilación de la salida del trazador. En resumen, rtla hwnoise ofrece una funcionalidad similar a osnoise (ruido del sistema operativo) mientras muestra solo interrupciones no enmascarables (NMI) y ruido relacionado con el hardware.

En principio, el ruido del hardware debería ser cero Linux. Sin embargo, resulta que esto no siempre es así. En el funcionamiento del sistema operativo, uno puede enfrentarse a dos fuentes principales de ruido.

Ruidos de las operaciones del sistema operativo y ruidos relacionados con el hardware. En el contexto de la computación de alto rendimiento (HPC), por ejemplo, el ruido del sistema operativo (osnoise) se refiere a la interferencia experimentada por una aplicación debido a actividades dentro del sistema operativo. En el contexto de Linux, NMI, IRQ, SoftIRQ y cualquier otro subproceso del sistema pueden causar ruido en el sistema. En cuyo caso,

En Linux, aunque puede haber otros, cuatro contextos de ejecución principales pueden interferir con una carga de trabajo: interrupciones no enmascarables (NMI), interrupciones enmascarables (IRQ), softirqs (actividades de IRQ diferidas) e hilos. Además de estos ruidos relacionados con el sistema, las cargas relacionadas con el hardware también pueden causar ruido, por ejemplo, a través de SMI.

Es en este último caso que se diseñó la herramienta rtla hwnoise. Para entender mejor cómo funciona la herramienta de monitoreo y medición de ruido relacionado con el hardware, es recomendable recurrir a la herramienta osnoise de Linux, ya que se deriva de ella.

En Linux, existen dos tipos de herramientas para medir el ruido del sistema operativo: una basada en la carga de trabajo y otra basada en el seguimiento. Las herramientas basadas en la carga de trabajo suelen ejecutar microbenchmarks con una duración conocida y miden la diferencia entre la duración planificada del microbenchmark y el tiempo real que lleva procesarlo. Si bien son buenas para definir la cantidad de ruido del sistema operativo que puede experimentar una carga de trabajo, las herramientas basadas en la carga de trabajo no pueden identificar las causas fundamentales del ruido del sistema operativo.

Los métodos basados ​​en rastreo aprovechan las capacidades de rastreo del kernel de Linux para identificar la causa del ruido del sistema operativo. Sin embargo, estos métodos basados ​​en trazas no tienen en cuenta cómo las cargas de trabajo perciben el ruido. Y es por eso que se diseñó la herramienta osnoise. Aprovecha al máximo los métodos basados ​​en la carga de trabajo y en el seguimiento, mostrando las causas fundamentales del ruido del sistema operativo y teniendo en cuenta cómo la carga de trabajo percibe el ruido.

Junto a osnoise, tenemos la herramienta rtla osnoise, que es una interfaz para el trazador de osnoise. El rastreador de osnoise ejecuta un bucle en el núcleo midiendo el tiempo disponible. Lo hace con preferencia, softirq e IRQ habilitados, lo que permite todas las fuentes de ruido mientras se ejecuta.

Con rtla hwnoise, los usuarios y desarrolladores que se preocupan por cada microsegundo robado por instrucciones falsas enviadas por hardware podrán medir con precisión esos ruidos y tomar decisiones en consecuencia, sabiendo que para las operaciones en tiempo real, cada microsegundo ganado por el procesador tiene valor.

Fuente: https://git.kernel.org


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.