#!/usr/bin/perl -w use strict; use Time::HiRes qw[ time ]; # OP: "I have a perl script that I need to run 1000 times and for each run # I need to store how much time it took to run... " # using foo_a.pl, execute this from foo_a's dir # Timings of foo_a.pl are NOT precise because they include the time # to execute the calculations here. my $begin = time; for my $arg( 1..1000 ) { my $start = time; system "perl foo_a.pl $arg"; my $duration = (time - $start); print "\n\t\$arg: $arg, \t\$start: $start, \t\$duration: $duration\n"; $start = time; } print "$begin" . time . "\n"; exit; #### #! /usr/bin/perl -w use strict; #foo_a.pl print "--foo_a.pl's marker inserted when run at LN11 in 1173964_a.pl: "; exit; #### --foo_a.pl's marker inserted when run at LN11 in 1173964_a.pl: $arg: 1, $start: 1476409956.16692, $duration: 0.0165810585021973 --foo_a.pl's marker inserted when run at LN11 in 1173964_a.pl: $arg: 2, $start: 1476409956.18353, $duration: 0.0134079456329346 --foo_a.pl's marker inserted when run at LN11 in 1173964_a.pl: $arg: 3, $start: 1476409956.19695, $duration: 0.0137300491333008 --foo_a.pl's marker inserted when run at LN11 in 1173964_a.pl: $arg: 4, $start: 1476409956.2107, $duration: 0.0142498016357422 # elided for brevity and henceforward, "marker inserted" lines deleted: $arg: 495, $start: 1476409962.28221, $duration: 0.0129170417785645 $arg: 496, $start: 1476409962.29514, $duration: 0.0133938789367676 $arg: 497, $start: 1476409962.30855, $duration: 0.0117459297180176 $arg: 498, $start: 1476409962.32031, $duration: 0.0139508247375488 $arg: 499, $start: 1476409962.33427, $duration: 0.0135560035705566 $arg: 500, $start: 1476409962.34784, $duration: 0.0124979019165039 $arg: 501, $start: 1476409962.36035, $duration: 0.0137338638305664 $arg: 502, $start: 1476409962.3741, $duration: 0.0120208263397217 $arg: 503, $start: 1476409962.38613, $duration: 0.0119149684906006 $arg: 504, $start: 1476409962.39807, $duration: 0.0124168395996094 $arg: 505, $start: 1476409962.4105, $duration: 0.0128791332244873 # another long stretch omitted... $arg: 995, $start: 1476409968.50899, $duration: 0.0113530158996582 $arg: 996, $start: 1476409968.52035, $duration: 0.0118088722229004 $arg: 997, $start: 1476409968.53218, $duration: 0.011375904083252 $arg: 998, $start: 1476409968.54356, $duration: 0.0114960670471191 $arg: 999, $start: 1476409968.55507, $duration: 0.0122640132904053 $arg: 1000, $start: 1476409968.56735, $duration: 0.0137550830841064