GNU/Linux >> Linux Esercitazione >  >> Linux

Come misurare il tempo medio di esecuzione di uno script?

È possibile eseguire iterazioni del programma in un ciclo; e dividi il tempo totale per il numero di iterazioni:

time for i in {1..10}; do sleep 1; done
real    0m10.052s
user    0m0.005s
sys 0m0.018s

esiste uno strumento chiamato multitime che fa esattamente questo:eseguire un comando più volte, misurando il tempo necessario (reale/utente/sistema con tempo medio, minimo/massimo e mediano calcolato automaticamente)

Ad esempio, per misurare uno script simile 100 volte:

multitime -q -n 100 "fact1.sh"
===> multitime results
1: -q fact1.sh
            Mean        Std.Dev.    Min         Median      Max
real        0.122       0.032       0.086       0.116       0.171       
user        0.148       0.044       0.096       0.137       0.223       
sys         0.023       0.019       0.000       0.014       0.061 

Questo è vecchio ma è arrivato così in alto su Google quando stavo cercando un comando che avevo usato in precedenza ma che non riuscivo a trovare. Ad ogni modo, il mio modo preferito per farlo è:

perf stat -r 10 -B sleep 1

Questo fornisce un bel po' di dettagli incluso il tempo medio di esecuzione proprio alla fine:

1.002248382 seconds time elapsed                   ( +-  0.01% )

Linux
  1. Come ricordare le opzioni di comando??

  2. Come dividere una stringa nello script Bash

  3. Come testare uno script PHP

  4. Misura il tempo di esecuzione dello script

  5. Time il tempo di esecuzione di più comandi

Come creare uno script di un comando Linux

Come eseguire uno script Python in PHP

Come eseguire uno script Bash

Stampa il tempo di esecuzione dello script della shell in Linux

Come eseguire un comando in uno script della shell?

Come serializzare l'esecuzione del comando su Linux?