Puntos de referencia del kernel de Linux 6.19 con optimización X86_NATIVE_CPU

NÚCLEO DE LINUX

A principios de este año se agregó al kernel de Linux la nueva opción X86_NATIVE_CPU Kconfig para permitir optimizaciones del compilador para la CPU local/nativa que se utiliza al construir el kernel de Linux. En realidad, se trata de asegurarse de que el indicador del compilador «-march=native» esté configurado para la compilación del kernel para optimizar la compilación del kernel de Linux para el procesador que se utiliza. En Linux 6.16 ejecuté algunas pruebas comparativas de la compilación del kernel de Linux con X86_NATIVE_CPU para medir el impacto. Ahora, con el kernel de Linux 6.19 actual y algo de hardware diferente, aquí hay algunos puntos de referencia de activación/desactivación adicionales para evaluar el impacto de construir el kernel de Linux con X86_NATIVE_CPU.

Para esta ronda rápida de evaluación comparativa, se utilizó Linux 6.19 Git creado con el kernel GCC 15.2 en el desarrollo de Ubuntu 26.04.

Opción CONFIG_X86_NATIVE

Esta prueba se realizó en una estación de trabajo AMD Ryzen Threadripper PRO 9995WX de 96 núcleos.

Puntos de referencia del kernel integrado de Linux 6.19 X86_NATIVE_CPU

Se realizó la misma configuración/compilación del kernel, excepto una con la opción X86_NATIVE_CPU habilitada y la otra sin ella.

Benchmark LevelDB con configuración de Benchmark: lectura aleatoria. X86_NATIVE_CPU Build fue la más rápida.

Prueba comparativa FS-Mark con configuración de prueba: 4000 archivos, 32 subdirectorios, tamaño 1 MB. X86_NATIVE_CPU Build fue la más rápida.

Prueba comparativa de IO Tester flexible con configuraciones de Tipo: Lectura aleatoria, Motor: IO_uring, Directo: No, Tamaño de bloque: 4 KB, Número de trabajos: 32, Destino de disco: Directorio de prueba predeterminado. X86_NATIVE_CPU Build fue la más rápida.

En algunas de las pruebas de E/S hubo ligeros beneficios de rendimiento gracias al kernel X86_NATIVE_CPU.

Punto de referencia Stress-NG con configuración de prueba: Actividad de socket. X86_NATIVE_CPU Build fue la más rápida.

Y en micro-benchmarks de núcleo sintético.

Punto de referencia de Memcached con la configuración de Set To Get Ratio: 1:100. X86_NATIVE_CPU Build fue la más rápida.

Benchmark Cryptsetup con configuración de cifrado Twofish-XTS 256b. X86_NATIVE_CPU Build fue la más rápida.

Benchmark Cryptsetup con configuración de descifrado Twofish-XTS 512b. X86_NATIVE_CPU Build fue la más rápida.

Punto de referencia de DaCapo con configuración de prueba de Java: Eclipse. Stock Kernel fue el más rápido.

Punto de referencia de Memcached con la configuración de Set To Get Ratio: 1:5. X86_NATIVE_CPU Build fue la más rápida.

Benchmark PostgreSQL con configuración de factor de escala: 100, clientes: 1000, modo: solo lectura. X86_NATIVE_CPU Build fue la más rápida.

Punto de referencia de ClickHouse con 100 millones de visitas a filas, configuración de conjunto de datos de primera ejecución/caché en frío. Stock Kernel fue el más rápido.

Prueba comparativa de RocksDB con configuración de Texto: leer mientras se escribe. X86_NATIVE_CPU Build fue la más rápida.

Pero entre las cargas de trabajo del mundo real hubo un beneficio general mínimo para este kernel GCC 15 + Linux 6.19 X86_NATIVE_CPU en la estación de trabajo AMD Ryzen Threadripper PRO 9995WX Zen 5.

Compare Apache Cassandra con configuración de prueba: escrituras. Stock Kernel fue el más rápido.

Pogocache de referencia con la configuración de Set To Get Ratio: 1:10. X86_NATIVE_CPU Build fue la más rápida.

Prueba comparativa de nginx con configuración de conexiones: 500. La compilación X86_NATIVE_CPU fue la más rápida.

Solo un artículo rápido de esta ronda, ya que después de más de 100 pruebas comparativas, solo en una pequeña cantidad de casos hubo alguna mejora digna de mención y solo en esas pruebas de E/S sintéticas y pruebas comparativas de micronúcleos.

Isabel Vertiz

Acerca de Isabel Vertiz

Soy Isabel Vertiz y potenciamos la tecnología de vanguardia en todas las escuelas e institutos donde el estado no llega, queremos que el estado ayude a muchos con tecnología de punta.

Ver todas las entradas de Isabel Vertiz →

Deja una respuesta

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