How to calculate elapsed time ?

From: Stuart Clemons (stuart_clemons_at_us.ibm.com)
Date: 01/28/04


To: beginners@perl.org
Date: Tue, 27 Jan 2004 19:50:30 -0500

Hi all:

I'm trying to determine how long an system operation takes. Anyone know
of a simple way to do this ?

I wanted to establish the start time. Then run the operation. Then mark
the finish time. Then substract the start time from the finish time to
get an elapsed time. Here's the simplistic approach I tried. I'm sure I
need a time that is measured in seconds or something like that, but I'm
not sure how to do this.

TIA

Here's what I tried:

#!/usr/bin/perl -w
use warnings;
use strict;

my $start = "Tue Jan 27 15:40:16 2004";
print "This is the start time: $start \n";

system (This is where the system process stuff goes);

my $finish = localtime;
print "This is the finish time: $finish \n";

my $elapsedtime = ("$finish" - "$start") ;
print "This is the time diff: $elapsedtime \n";

The above obviously didn't work. Here's what it returned:

This is the start time: Tue Jan 27 15:40:16 2004
Argument "Tue Jan 27 15:40:16 2004" isn't numeric in subtraction (-) at
C:\Perl\timetest.pl line 13.
This is the finish time: Tue Jan 27 19:45:56 2004
This is the time diff: 0
Argument "Tue Jan 27 19:45:56 2004" isn't numeric in subtraction (-) at
C:\Perl\timetest.pl line ClearCase\Us



Relevant Pages

  • RE: How to calculate elapsed time ?
    ... How to calculate elapsed time? ... > I'm trying to determine how long an system operation takes. ... > TIA ...
    (perl.beginners)
  • Re: How to calculate elapsed time ?
    ... > I'm trying to determine how long an system operation takes. ... > get an elapsed time. ... Use the Benchmark module or Time::Hires. ... Randy. ...
    (perl.beginners)
  • Re: How to calculate elapsed time ?
    ... > I'm trying to determine how long an system operation takes. ... > This is the time diff: ... Don't hardcode the start time either as this seems kind of ... Time::HiRes to get partial second granularity. ...
    (perl.beginners)