
El ingeniero de AMD, K Prateek Nayak, descubrió recientemente que una solución alternativa de chipset de 20 años en el kernel de Linux todavía funciona en los sistemas AMD modernos. Puede dañar el rendimiento del hardware Zen moderno en algunos casos. Afortunadamente, reparar Se están realizando esfuerzos para limitar esta solución a los sistemas más antiguos, lo que ayuda a mejorar el rendimiento de los sistemas modernos. Phoronix informa: la semana pasada fue parche Lanzado para el código inactivo del procesador ACPI para evitar el uso de soluciones alternativas de conjuntos de chips antiguos en los sistemas AMD Zen modernos. Desde que se agregó la compatibilidad con ACPI al kernel de Linux en 2002, ha habido una «operación de espera virtual» para manejar algunos conjuntos de chips en los que STPCLK# no se afirma a tiempo. Las lecturas de E/S virtuales retrasan el procesamiento de instrucciones adicionales hasta que la CPU se detiene por completo. Al menos en algunos sistemas de la era AMD Athlon con conjuntos de chips VIA, esto fue un problema… pero no para los conjuntos de chips más nuevos de las últimas dos décadas más o menos.
Esta solución aún funciona en los sistemas AMD modernos, K Prateek Nayak Encontrar: «El muestreo de algunas cargas de trabajo con IBS en sistemas AMD Zen3 muestra que se dedica una cantidad significativa de tiempo a operaciones virtuales, que se cuentan incorrectamente como residencia de C-State. Los valores de residencia de C-State más grandes pueden hacer que el gobernador de cpuidle recomiende una»
Esta solución incondicional a largo plazo en el kernel de Linux ha afectado el rendimiento de AMD Ryzen/Threadripper/EPYC en ciertas cargas de trabajo, al menos para Tbench. Esta solución alternativa no afecta a los sistemas Intel modernos porque estas plataformas Intel más nuevas utilizan una ruta de código de controlador intel_idle alternativa basada en MWAIT. El parche de AMD evoluciona a este parche Dave Hansen, ingeniero de Intel Linux. Se ha puesto en cola un parche para limitar la solución de «espera virtual» a los sistemas más antiguos en la rama x86/urgente de TIP. A medida que va por la ruta «x86/urgente» y corrige soluciones alternativas demasiado entusiastas que no son necesarias en el hardware moderno, es probable que este parche se comprometa con el kernel de Linux 6.0 esta semana, en lugar de tener que esperar hasta el próximo (v6. 1) Combinar ventanas.