Problèmes de performances du stockage local de thread C++ : 0 + 0 > 0 ?

2025-02-17
Problèmes de performances du stockage local de thread C++ : 0 + 0 > 0 ?

Cet article examine en profondeur les implications en termes de performances de l’utilisation de variables thread_local en C++. En analysant le code assembleur, l’auteur révèle des écarts de performances significatifs dans différents scénarios, notamment avec les variables thread_local dotées de constructeurs et celles utilisées dans des bibliothèques partagées. Même des accès simples peuvent subir des ralentissements importants en raison des appels de constructeurs, du chargement dynamique des bibliothèques partagées et d’autres facteurs. L’article se conclut par des directives d’optimisation des performances et aborde les améliorations futures, afin d’aider les développeurs à éviter les pièges de performances de thread_local.

Développement