Depuis que vprof est sorti sur Twitter, je vais écrire comment l'utiliser. Le [README.md] de vprof (https://raw.githubusercontent.com/nvdv/vprof/master/README.md) est mieux écrit, il peut donc être plus rapide de le lire.
vprof est un package Python qui fournit une visualisation interactive des informations de profil.
https://pypi.python.org/pypi/vprof
La dernière version actuelle sur pypi est la 0.3. (Au 21 mai 2016) Pour le moment, installez avec pip.
$ pip install vprof
Si vous regardez README.md
## Prerequisites
The required dependencies to build ```vprof``` from source code:
* Python 2.7, Python 3.4 or Python 3.5
* ```pip```
* ```npm``` >= 3.3.12
Il semble que ce nœud soit également nécessaire car il dit.
Cette fois, j'ai essayé de comparer ce script.
#! /usr/bin/env python
import sys
import time
def calc():
num = 0
for ii in range(100):
ii += 1
time.sleep(0.01)
return num
def alloc_large_memory():
txt = 'a' * 1024 * 1024 * 100 # 100MB
return txt
def main():
calc()
alloc_large_memory()
if __name__ == '__main__':
sys.exit(main())
$ vsof -cmh "./benchmark.py"
Spécifiez la cible d'affichage avec l'option -n
.
option | Afficher la cible | Détails |
---|---|---|
c | framechart | Graphique cadre |
m | memory stats | utilisation de la mémoire |
h | code heatmap | Carte thermique ligne par ligne |
framechart
Le temps d'exécution et le nombre d'appels sont visualisés.
Pour être honnête, la liste affichée par cprofile peut être plus facile à traiter et à voir. .. ..
memory stats
L'utilisation de la mémoire est visualisée.
C'est assez bien car vous pouvez voir le nom du fichier et le nombre de lignes lors de la mesure de l'utilisation de la mémoire.
code heatmap
C'est une carte thermique.
Il semble que les lieux avec de nombreuses exécutions soient affichés dans des couleurs sombres. Cela semble bon. Je ne savais pas comment afficher les fichiers que j'importais ...
Recommended Posts