Question

Sur une question de performances, comment Python 3 se compare-t-il à Python 2.x?

Était-ce utile?

La solution

3.0 est plus lent que 2.5 sur les repères officiels. De "Quoi de neuf dans Python 3.0": :

  

Le résultat net de la 3.0   les généralisations est que Python 3.0   tourne autour de 10% du benchmark pystone   plus lent que Python 2.5. Probablement   la plus grande cause est la suppression de   boîtier spécial pour les petits entiers.   Il y a place à l'amélioration, mais cela reste   se produira après la publication de la version 3.0!

Autres conseils

Je dirais que toute différence sera inférieure à la normale. Par exemple, le bouclage sur une liste sera exactement le même.

L’idée de Python 3 est de nettoyer la syntaxe du langage lui-même - en supprimant les éléments ambigus tels que sauf Exception1, Exception2 , nettoyer les modules standard (pas d’urllib, urllib2, httplib, etc.).

Il n’ya vraiment pas grand-chose à faire pour améliorer ses performances, même si j’imagine que des éléments tels que la récupération de place et le code de gestion de la mémoire auront fait l’objet de quelques ajustements, mais cela ne sera pas un "wow, ma génération de statistiques de base de données le code se termine en deux fois plus de temps! " amélioration - c’est quelque chose que vous obtenez en améliorant le code plutôt que la langue!

En réalité, les performances du langage n’ont aucune importance - tous les langages interprétés fonctionnent à la même vitesse. Pourquoi je trouve Python " plus rapide " sont tous les moudles intégrés, et la syntaxe agréable à écrire - quelque chose qui a été amélioré dans Python3, donc je suppose qu'en ces termes, oui, les performances de python3 sont meilleures que celles de python2.x. .

La bibliothèque d'IO a été entièrement repensée et la nouvelle implémentation est en Python pur. Bien qu’il s’agisse d’une amélioration fonctionnelle, elle est actuellement beaucoup plus lente. Des travaux sont en cours pour réécrire la majeure partie du nouveau système en C. Pour plus de détails, voir ces bogue rapports .

Je pense qu’il est encore trop tôt pour faire ce type de comparaison. Attendez qu’elle soit hors de la version bêta avant de la comparer. L’interprète sera probablement énormément poli avant la sortie mais dans l’ensemble, je pense que pour la plupart des utilisations, les performances seraient comparables et si vous utilisiez une application très rapide, python était-il vraiment le bon langage à utiliser?

À moins qu’il soit prévu de créer une nouvelle machine virtuelle (et que je n’ai pas entendu parler de tels projets), il ya tout lieu de croire que les performances de Py3K seront, à tout le moins, asymétriques. celui de 2,5

Cela peut prendre quelques mois, mais finira par se produire, car rien dans les nouvelles fonctionnalités de Py3k n’est intrinsèquement moins performant.

Pour conclure, je ne pense pas qu’il y ait lieu de s’inquiéter à ce sujet. Ni espérer une amélioration majeure.

Je ne crois pas que ce soit plus rapide maintenant, mais je dois m'attendre à ce que ce soit finalement le cas, car c'est là que le nouveau travail de performance se produira et que tout cela ne sera pas rétroporté.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top