Este é o comando dprofppp que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
dprofpp - exibe dados de perfil perl
SINOPSE
dprofpp [-a|-z|-l|-v|-U] [-d] [-s|-r|-u] [-q] [-F] [-I | -E] [-O cnt] [-A] [-R] [-S] [-g
sub-rotina] [-G [-P]] [-f ] [perfil]
dprofpp -T [-F] [-g sub-rotina] [perfil]
dprofpp -t [-F] [-g sub-rotina] [perfil]
dprofpp -G [-P] [perfil]
dprofpp -p escrita [-Q] [outras opções]
dprofpp -V [perfil]
DESCRIÇÃO
A dprofpp comando interpreta os dados de perfil produzidos por um criador de perfil, como o
Perfilador Devel :: DProf. Dprofpp irá ler o arquivo tmon.out e exibir as 15 sub-rotinas
que estão usando mais tempo. Por padrão, os tempos de cada sub-rotina são fornecidos
exclusivo dos tempos de suas sub-rotinas filhas.
Para criar o perfil de um script Perl, execute o interpretador perl com o -d trocar. Então, para o perfil
escrita teste.pl com Devel :: DProf use o seguinte:
$ perl5 -d: DProf test.pl
Em seguida, execute dprofpp para analisar o perfil. A saída do dprofpp depende dos sinalizadores para
o programa e a versão do Perl que você está usando.
$ dprofpp -você
Tempo total decorrido = 1.67 segundos
Tempo do usuário = 0.61 segundos
Tempos Exclusivos
% Time Seconds #Calls sec / Call Name
52.4 0.320 2 0.1600 main :: foo
45.9 0.280 200 0.0014 principal :: bar
0.00 0.000 1 0.0000 DynaLoader :: importar
0.00 0.000 1 0.0000 principal :: baz
A ferramenta dprofpp também pode executar o criador de perfil antes de analisar os dados do perfil. O de cima
dois comandos podem ser executados com um comando dprofpp.
$ dprofpp -u -p teste.pl
Consulte "FORMATO DE PERFIL" em Devel :: DProf para uma descrição do perfil bruto.
SAÍDA
As colunas são:
%Tempo
Porcentagem de tempo gasto nesta rotina.
#Chamadas
Número de chamadas para esta rotina.
s / chamada
Número médio de segundos por chamada para esta rotina.
Nome
Nome da rotina.
CumulS
Tempo (em segundos) gasto nesta rotina e rotinas chamadas a partir dela.
ExclSec
Tempo (em segundos) gasto nesta rotina (não incluindo aqueles chamados a partir dela).
Csec / c
Tempo médio (em segundos) gasto em cada chamada desta rotina (incluindo as chamadas
a partir dele).
OPÇÕES
-a Classifique em ordem alfabética por nomes de sub-rotina.
-d Reverter qualquer tipo que for usado
-A Tempo de contagem para a sub-rotina carregada automaticamente como tempo para * :: AUTOLOAD. Caso contrário, o tempo
para carregar automaticamente é contado como o tempo da própria sub-rotina (não há como
separar o tempo de carregamento automático do tempo de execução).
Isso será irrelevante com o Perls mais recente. Eles irão informar "Devel :: DProf"
quando o "AUTOLOAD" muda para a sub-rotina real, portanto, uma estatística separada para
"AUTOLOAD" será coletado independentemente de esta opção estar definida.
-R Conte sub-rotinas anônimas definidas no mesmo pacote separadamente.
-E (padrão) Exibe todos os tempos da sub-rotina, excluindo os tempos da sub-rotina filha.
-F Força a geração de carimbos de data / hora de saída falsos se o dprofpp relatar que o perfil é
truncado. Isso só é útil se o dprofpp determinar que o perfil está truncado devido
para carimbos de data / hora de saída ausentes. Você está por conta própria se fizer isso. Consulte os BUGS
seção.
-I Exibe todos os tempos da sub-rotina, incluindo os tempos da sub-rotina filha.
-l Classifique por número de chamadas para as sub-rotinas. Isso pode ajudar a identificar candidatos para
embutimento.
-O cnt
Mostrar apenas cnt sub-rotinas. O padrão é 15.
-p escrita
Diz ao dprofpp que ele deve criar o perfil do script fornecido e então interpretar seu perfil
dados. Ver -Q.
-Q Usado com -p para dizer ao dprofpp para sair após criar o perfil do script, sem interpretar
os dados.
-q Não exiba cabeçalhos de coluna.
-r Exibe tempos reais decorridos em vez de tempos de usuário + sistema.
-s Exibe os horários do sistema em vez dos horários do usuário + sistema.
-T Exibir árvore de chamada de sub-rotina para stdout. Estatísticas de sub-rotina não são exibidas.
-t Exibir árvore de chamada de sub-rotina para stdout. Estatísticas de sub-rotina não são exibidas.
Quando uma função é chamada várias vezes consecutivas no mesmo nível de chamada, então
ele é exibido uma vez com uma contagem de repetição.
-S Ecrã Mesclado árvore de chamada de sub-rotina para stdout. As estatísticas são exibidas para cada
galho da árvore.
Quando uma função é chamada de múltipla (não necessariamente consecutivo) vezes no mesmo
ramificação, então, todas essas chamadas vão para uma ramificação do próximo nível. Uma contagem de repetição é
saída combinada com tempo inclusivo, exclusivo e infantil.
Os ramos são classificados de acordo com o tempo inclusivo.
-U Não classifique. Exibir na ordem encontrada no perfil bruto.
-u Exibe os tempos do usuário em vez dos tempos do usuário + sistema.
-V Imprime o número da versão do dprofpp e sai. Se um perfil bruto for encontrado, então é
A variável XS_VERSION também será exibida.
-v Classifique pelo tempo médio gasto nas sub-rotinas durante cada chamada. Isso pode ajudar a identificar
candidatos para inlining.
-z (padrão) Classificar pela quantidade de tempo do usuário + sistema usado. As primeiras linhas devem mostrar
você quais sub-rotinas estão usando mais tempo.
-g "sub-rotina"
Ignore as sub-rotinas, exceto "sub-rotina" e tudo o que for chamado a partir dela.
-G
Agregue "Agrupe" todas as chamadas que correspondam ao padrão. Por exemplo, isso pode ser
usado para agrupar todas as chamadas de um conjunto de pacotes
-G "(pacote1: :) | (pacote2: :) | (pacote3: :)"
ou para agrupar sub-rotinas por nome:
-G "getNum"
-P Usado com -G para agregar "Puxar" todas as chamadas que não corresponderam a -G.
-f
Filtre todas as chamadas que correspondem ao padrão.
-h Exibe uma breve ajuda e sai.
-H Exibir ajuda longa e sair.
MEIO AMBIENTE
A variável de ambiente DPROFPP_OPTS pode ser definido como uma string contendo opções para
dprofpp. Você pode usar isto se preferir -I Acima de -E ou se você quiser -F ligado o tempo todo.
Isso foi adicionado de forma bastante preguiçosa, portanto, existem alguns efeitos colaterais indesejáveis. Opções no
linha de comando deve substituir as opções em DPROFPP_OPTS - mas não conte com isso neste
versão.
Use dprofppp online usando serviços onworks.net