Profiling programas é um primeiro passo importante na otimização. Se você quer que seu programa seja executado mais rapidamente, você primeiro tem que identificar quais funções estão tomando a maior parte do tempo e focar sua atenção lá. Para fazer isso, um programa Perl tem que recolher e detalhes suas chamadas de sub-rotinas e saídas , criando um arquivo que tem todas as informações do perfil. Profiling seu programa Perl vai lhe dizer onde a maior quantidade de tempo está sendo gasto. Instruções
1
compilar dados de teste, usando grandes arquivos de dados quando possível. Se o seu programa está processando uma grande quantidade de dados , montar alguns dados pior cenário . Não há nenhum ponto na otimização de seu programa Perl para o melhor cenário ou menor quantidade de dados
2
Execute o profiler , executando o seu programa a partir da linha de comando com o Perl -d: . Opção DProf . Isto irá perfil de seu programa e saída de um arquivo tmon.out . Este arquivo tmon.out será grande e incompreensível , mas é facilmente transformado em um estado legível: " perl- d: DProf test.pl "
3
Execute o processador de perfil, usando o dprofpp comando (pré- processador dprof ) . O comando irá produzir uma saída legível do arquivo tmon.out . As colunas mais interessantes são a percentagem de tempo gasto , número de vezes chamado eo nome da função . Eis alguns exemplos dos resultados : "C: \\ projects \\ Perl > dprofppTotal tempo decorrido = 0.377622 Segundos utilizadores + Hora do Sistema = 0,345622 % SecondsExclusive Tempos Tempo ExclSec CumulS # Chama seg /chamar a ESCI /c Nome 79,5 0,275 0,269 0,2752 0,2694 1 File :: Encontre :: _find_dir 13,6 0,047 0,063 2 0,0235 0,0313 principal :: BEGIN 4,63 0,016 0,016 3 0,0053 0,0053 DynaLoader :: dl_load_file 4,63 0,016 0,016 3 0,0053 0,0053 ActivePerl :: config :: BEGIN 4,34 0,015 0,015 3 0,0050 0,0050 DynaLoader :: BEGIN 0,00 0,000 0,000 1 0.0000 0.0000 config :: lançador 0,00 0,000 0,000 1 0,0000 0,0000 config :: fetch_string "
4
Perfil seus programas Perl , identificando pontos de otimização. Funções que tomam muito tempo ou são chamados de um grande número de vezes que são candidatos para otimização.
5
Otimize seu programa. Se uma função é chamada uma quantidade excessiva de tempo ( centenas , milhares ou superior) , considere levar o corpo da função e colocá-lo diretamente no código de chamada . Mesmo que as funções não demorou muito tempo para ser executada , a função chama -se levar tempo.