En cola antes de que comience el ciclo de Linux 6.5 en aproximadamente un mes, hay un nuevo parche de optimización de Linux x86 para ajustar aún más csum_partial, la función utilizada dentro del kernel para calcular sumas de verificación de 32 bits en bloques de datos. Se puede observar una latencia mucho más baja y un rendimiento más alto con el csum_partial recientemente optimizado en los procesadores Intel/AMD más recientes.

La función csum_partial se usa en todo el núcleo, desde la red hasta los sistemas de archivos, para realizar sumas de verificación. Un nuevo parche ahora en cola en tip/tip.git está mejorando el rendimiento de la implementación x86/x86_64 csum_partial. El desarrollador Noah Goldstein anotó en el parche:

x86/csum: Mejore el rendimiento de `csum_partial`

1) Agregue un caso especial para len==40 ya que ese es el valor más popular. Esto genera una mejora de latencia de ~8-9 % y una mejora de rendimiento de ~30 % en el caso de len==40.

2) Usar varios acumuladores en el bucle de 64 bytes. Esto mejora drásticamente la ILP y da como resultado una mejora de la latencia/rendimiento de hasta un 40 % (mejor para más iteraciones).


El parche se pone en cola en la rama x86/misc de TIP hasta que se inicia la ventana de combinación de Linux 6.5. Siempre es un placer ver las interminables optimizaciones de rendimiento del kernel de Linux.

Categories: IT Info