In de wachtrij voor de Linux 6.5-cyclus die over ongeveer een maand van start gaat, is een nieuwe Linux x86-optimalisatiepatch voor het verder afstemmen van csum_partial, de functie die in de kernel wordt gebruikt voor het berekenen van 32-bit checksums op datablokken. Veel lagere latentie en hogere doorvoer kunnen worden waargenomen met de nieuw geoptimaliseerde csum_partial op de nieuwste Intel/AMD-processors.

De functie csum_partial wordt door de hele kernel gebruikt, van netwerken tot bestandssystemen voor check-summing doeleinden. Een nieuwe patch die nu in de wachtrij staat in tip/tip.git verbetert de prestaties van de x86/x86_64 csum_partial-implementatie. Ontwikkelaar Noah Goldstein noteerde in de patch:

x86/csum: Verbeter de prestaties van `csum_partial`

1) Voeg een speciaal hoofdlettergebruik toe voor len==40, want dat is de beste waarde. De netten een verbetering van ~ 8-9% latentie en een verbetering van ~ 30% doorvoer in het geval van len==40.

2) Gebruik meerdere accumulatoren in de lus van 64 bytes. Dit verbetert de ILP drastisch en resulteert in een latentie/doorvoerverbetering tot 40% (beter voor meer iteraties).

De patch wordt in de wachtrij geplaatst in de x86/misc-tak van TIP totdat het samenvoegvenster van Linux 6.5 van start gaat. Het is altijd een plezier om de eindeloze prestatie-optimalisaties van de Linux-kernel te zien.

Categories: IT Info