Le crate `time` de Rust gagne 57,5% de vitesse grâce à un algorithme réécrit

2025-02-03

Après cinq ans de maintenance du crate `time` de Rust, l'auteur a entrepris une optimisation significative des performances. En refaisant l'algorithme `Date::to_calendar_date`, en utilisant des fonctions affines euclidiennes et une arithmétique entière astucieuse, l'auteur a évité les opérations à virgule flottante et les branchements, ce qui a entraîné une amélioration des performances de 57,5%. Le nouvel algorithme est significativement plus rapide non seulement pour le calcul de la date et du mois ensemble, mais aussi pour leur calcul séparé. Ce fut une tâche non triviale, mais l'auteur estime que les gains de performances valent l'effort.

Lire plus
Développement