vprof é um pacote Python que fornece visualizações ricas e interativas para várias características do programa Python, como tempo de execução e uso de memória. Suporta Python 3.4+ e distribuído sob licença BSD.
O projeto está em desenvolvimento ativo e alguns de seus recursos podem não funcionar conforme o esperado.
Todas as contribuições são altamente encorajadas! Você pode adicionar novos recursos, relatar e corrigir bugs existentes e escrever documentos e tutoriais. Sinta-se à vontade para abrir um problema ou enviar uma solicitação pull!
Dependências para construir vprof
a partir do código-fonte:
Python 3.4+
pip
npm
>= 3.3.12
npm
é necessário para construir vprof
apenas a partir de fontes.
Todas as dependências dos módulos Python e npm
estão listadas em package.json
e requirements.txt
.
vprof
pode ser instalado a partir do PyPI
pip instalar vprof
Para construir vprof
a partir de fontes, clone este repositório e execute
python3 setup.py deps_install && python3 setup.py build_ui && python3 setup.py instalar
Para instalar apenas dependências vprof
, execute
python3 setup.py deps_install
vprof -c <config> <src>
<config>
é uma combinação de modos suportados:
c
- Gráfico em chamas da CPU
Não disponível para Windows #62
Mostra o gráfico em chamas da CPU para <src>
.
p
- criador de perfil
Executa o criador de perfil Python integrado em <src>
e exibe os resultados.
m
- gráfico de memória
Mostra objetos que são rastreados pelo CPython GC e deixados na memória após a execução do código. Também mostra o uso da memória do processo após a execução de cada linha de <src>
.
h
- mapa de calor do código
Exibe todo o código executado de <src>
com tempos de execução de linha e contagens de execução.
<src>
pode ser o arquivo fonte do Python (por exemplo, testscript.py
) ou o caminho para o pacote (por exemplo, myproject/test_package
).
Para executar scripts com argumentos use aspas duplas
vprof -c cmh "testscript.py --foo --bar"
Os modos podem ser combinados
vprof -ccm testscript.py
vprof
também pode criar perfis de funções. Para fazer isso, inicie vprof
em modo remoto:
vprof -r
vprof
abrirá uma nova guia no navegador padrão e aguardará as estatísticas.
Para criar o perfil de uma execução de função
de vprof import runnerdef foo(arg1, arg2): ...runner.run(foo, 'cmhp', args=(arg1, arg2), host='localhost', porta=8000)
onde cmhp
é o modo de criação de perfil, host
e port
são o nome do host e a porta do servidor vprof
iniciado no modo remoto. As estatísticas obtidas serão renderizadas em uma nova guia do navegador padrão, aberta pelo comando vprof -r
.
vprof
pode salvar estatísticas de perfil em arquivo e renderizar visualizações de arquivo salvo anteriormente.
vprof -c cmh src.py --arquivo de saída profile.json
grava o perfil no arquivo e
vprof --arquivo de entrada profile.json
renderiza visualizações de arquivo salvo anteriormente.
Verifique vprof -h
para obter uma lista completa de parâmetros suportados.
Para mostrar a ajuda da UI, pressione h
quando as visualizações forem exibidas.
Além disso, você pode verificar o diretório examples
para obter mais exemplos de criação de perfil.
python3 setup.py test_python && python3 setup.py test_javascript && python3 setup.py e2e_test
BSD