Pendant que cet été, j’ai exécuté quelques premiers benchmarks de Python 3.11 en utilisant l’état de développement à l’époque, étant donné la version de Python 3.11 d’hier, j’ai effectué de nouveaux tests de performances de la version officielle de Python 3.11 par rapport à la version précédente de Python 3 versions.
Semblable aux précédents benchmarks de développement Python 3.11, Python 3.11 est une énorme amélioration du département des performances par rapport aux versions précédentes de CPython. Grâce au travail du”Faster CPython Project”, Python 3.11 présente des améliorations spectaculaires des performances par rapport à Python 3.10 et versions antérieures.
L’annonce de la version Python 3.11 cite des améliorations de 10 à 60 % par rapport à Python 3.10 et une version 1.22x accélération pour sa suite de benchmark standard.
En utilisant les sources officielles de Python 3.11.0 d’hier, les performances de Python ont été comparées à celles de 3.10.6, 3.9.15 et 3.8.15. Toutes les versions de Python ont été construites à partir de la source en mode de publication et avec des optimisations LTO tout en utilisant GCC 12 et les autres composants de stock d’Ubuntu 22.10 LTS. Tous les benchmarks Python ont été répétés de la même manière à partir d’un poste de travail de développeur AMD Ryzen 9 5950X.
En accord avec les attentes en amont de Python et de mes premiers benchmarks il y a quelques mois, les performances de Python 3.11 montrent d’énormes amélioration par rapport aux versions précédentes de Python :
Comme le montre l’analyse comparative de Python 3.8, il n’y a normalement pas trop de variation dans le département des performances entre les versions de CPython. Mais avec Python 3.11, c’est un grand changement pour augmenter les performances et rendre cette implémentation Python de facto plus compétitive par rapport à Pyston et PyPy.
Pour ceux qui effectuent des travaux sensibles aux performances dans le code Python lui-même, c’est Cela vaut certainement la peine d’essayer Python 3.11 dès que possible maintenant qu’il est sous une forme stable. Python 3.11 offre des améliorations de performances assez remarquables par rapport à Python 3.10 et versions antérieures.
Python 3.11 a des optimisations de performances autour de son temps de démarrage, diverses optimisations de cadre, des appels de fonction Python intégrés, et bien plus encore, comme indiqué dans le Notes de version 3.11.
D’après les tests que j’ai effectués sur Python 3.11 avec le Ryzen 9 5950X sur Ubuntu 22.10, Python 3.11 arrivait 32 % plus vite que les versions précédentes avec l’ensemble de benchmarks Python utilisé.