Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 16030|Resposta: 0

[Gorjetas] Vários métodos de cálculo do tempo de execução em Python

[Copiar link]
Publicado em 23/04/2018 15:54:36 | | | |
Primeiro, vamos falar sobre as armadilhas que encontrei, os problemas encontrados em produção, eu escalo a execução do script em Python e monitoro o processo, o tempo de execução do script em Python é muito maior do que o tempo de execução do programa que conto no script em Python.
O tempo para monitorar a execução de scripts em Python é de 36 horas, enquanto o tempo de autoexecução em scripts Python é de cerca de 4 horas.
A primeira coisa que me vem à mente depois do problema é que há um problema com o Linux, e não encontrei nenhuma anomalia em vários logs.
Depois, penso no py2neo usado em python para escrever dados de forma assíncrona, bloqueando a execução do processo.
Finalmente, o problema foi encontrado: a forma como o script em python usa time.clock() para contar o tempo de execução da CPU, não o tempo de execução do programa.
Em seguida, vamos comparar várias estatísticas de tempo em Python:

Método 1:

TempoTarde.TempoAgora() recebe a data atual e, após o término da execução do programa, o valor de tempo obtido por esse método é o tempo de execução do programa.

Método 2:

tempo.tempo() para obter o tempo atual desde a época (Em segundos)。 Se o relógio do sistema os fornecer, pode haver uma fração de segundos. Então esse lugar retorna um tipo de ponto flutuante. O que é obtido aqui também é o tempo de execução do programa.

Método 3:

time.clock() retorna o tempo da CPU desde que o programa iniciou ou foi chamado pela primeira vez. Isso tem tanta precisão quanto a gravação do sistema. O retorno também é do tipo ponto flutuante. O que você obtém aqui é o tempo de execução da CPU.
Nota: Tempo de execução do programa = tempo de CPU + tempo de io + tempo de hibernação ou espera

Veja como eu teste o tempo de execução da função usando o método 2:







Anterior:Tutorial de instalação de python 3.6.5 no Windows
Próximo:A Evolução da Arquitetura de Redes Neurais: Uma revisão abrangente de mais de dez arquiteturas do LeNet5 ao ENet
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com