Les pièges de std::unordered_set dans les boucles critiques C++
std::unordered_set garantit une complexité O(1) en moyenne mais génère un surcoût significatif en pratique pour les boucles sensibles aux performances, pouvant dégrader les perfs d'un ordre de magnitude
Dans un index Vamana pour la recherche de plus proches voisins, remplacer un conteneur hash par une structure adaptée aux identifiants denses améliore drastiquement le temps d'exécution des vérifications d'accès
Les habitudes de développement doivent céder face au profilage : mesurer avant d'optimiser reste crucial, particulièrement dans les chemins critiques d'exécution
🔗Cliquez sur le lien pour lire un article sur le sujet :