La proposition destinée à Linux 7.5 ajouterait au code cryptographique du noyau une voie AVX-512 capable de traiter jusqu’à 16 blocs ChaCha par appel, contre huit pour la voie existante en 256 bits. Phoronix a rapporté des gains allant jusqu’à 99 % sur un AMD Ryzen AI Max Strix Halo avec Zen 5 et jusqu’à 39 % sur Zen 4. Ces chiffres concernent des tests ChaCha sur des configurations précises. (Phoronix)

Dans son article du 9 novembre 2026, Phoronix indiquait que le patch de Martin Willi était placé dans la branche libcrypto-next d’Eric Biggers et devait être soumis pour la fenêtre d’intégration de Linux 7.5. Cette étape concerne une proposition de modification du noyau.

Pour interpréter le gain annoncé, gardez en tête le test qui l’a mesuré : un débit ChaCha isolé ne prédit pas à lui seul les performances d’une application ou d’un VPN.

Une voie plus large pour les gros blocs

La voie existante traite jusqu’à huit blocs à la fois dans des registres ymm de 256 bits. La variante proposée utilise des registres zmm de 512 bits pour en traiter jusqu’à 16. La description du patch la destine aux entrées de plus de huit blocs, sur le chemin avx512vl, avec une sélection tenant compte de X86_FEATURE_PREFER_YMM. (Phoronix)

Le choix de la largeur répond aussi à une différence entre générations de processeurs. La description de Martin Willi explique que les instructions zmm entraînaient une forte baisse de fréquence sur Skylake-X, ce qui motivait l’emploi de registres 256 bits. La nouvelle voie élargie vise les processeurs où cette pénalité ne s’applique pas, et cherche à exploiter davantage de parallélisme pour les traitements par blocs.

Des gains mesurés sur des configurations distinctes

Le résultat allant jusqu’à 99 % concerne le Ryzen AI Max Strix Halo avec Zen 5 et la voie complète en 512 bits, selon Phoronix. Le gain rapporté pour Zen 4 atteint jusqu’à 39 % avec un chemin de données en 256 bits. Il s’agit de résultats portant sur ChaCha, pas d’une accélération générale du processeur ou de tous les logiciels. (Phoronix)

Un message distinct d’Antonio Quartulli, daté du 25 octobre 2026, rapporte un débit de chacha_crypt() passant d’environ 5,2 à 10,2 Go/s sur un Ryzen 9 9950X, pour des entrées de 1 Kio ou plus. Les valeurs arrondies correspondent à une hausse d’environ 96 %. Ce test porte sur le Ryzen 9 9950X, tandis que Phoronix associe son résultat allant jusqu’à 99 % au Ryzen AI Max Strix Halo. (Message d’Antonio Quartulli sur la liste de diffusion du noyau Linux)

Les mesures OpenVPN et la proposition de tests KUnit

Dans le même message, Quartulli rapporte des gains de débit ChaCha20-Poly1305 d’environ 10 % avec une MTU de 1 500 octets et de 35 % avec une MTU de 9 000 octets, lors d’un test en machine virtuelle lié à ses travaux sur l’accélération du canal de données d’OpenVPN. Ces mesures décrivent ce test et ses tailles de MTU ; elles ne permettent pas de déduire un gain équivalent dans un tunnel WireGuard ou dans toutes les configurations OpenVPN. (Message d’Antonio Quartulli sur la liste de diffusion du noyau Linux)

Quartulli a également proposé séparément une suite de tests et un benchmark KUnit pour chacha_crypt(). La proposition comparait la fonction à chacha_block_generic() sur des longueurs allant jusqu’à 4 100 octets, ainsi que sur des longueurs aléatoires jusqu’à 12 Kio. Elle prévoyait aussi des pages de garde, des appels avec données en place ou réparties, et le vecteur de test RFC 7539. Quartulli a indiqué avoir retiré son patch d’implémentation concurrent au profit de l’approche de Martin Willi. (Message d’Antonio Quartulli sur la liste de diffusion du noyau Linux)