Benchmarker son code avec le module timeit Benchmarker son code:module timeit
Pour les développeurs souhaitant
exploiter au maximum les ressources de Python, du Raspberry
Pi et de leur code, il est possible de mesurer le temps d’exécution
d’un programme avec le module timeit.
Savoir de combien de temps un programme a besoin pour s’exécuter,
et surtout identifier quel endroit d’un programme nécessite
le plus de ressources, peut parfois permettre de gagner de précieuses
secondes.
timeit peut
s’utiliser de deux manières : directement depuis
la ligne de commande ou chargé depuis un script. Bien que
l’utilisation en ligne de commande soit séduisante à première
vue, elle convient aux scripts one liners mais
elle est peu adaptée lorsque le code à tester
s’étale sur plusieurs lignes.
En réalité, le module ne
mesure pas le temps d’exécution d’un programme en entier
mais le temps d’exécution d’un bloc de code en particulier.
Il est recommandé d’utiliser timeit sur
de petits blocs et de se concentrer sur ce qui est le plus condensé en
termes de code : une fonction.
Pour démontrer comment améliorer
le temps d’exécution d’une fonction, nous allons réutiliser une
fonction issue de ce chapitre, la fonction int_fois_deux() du
module doctest_1.py que
nous allons ensuite améliorer. Pour rappel, voici la définition ...