blob: 33255073e58c16466770569244a5ada4ac913575 [file] [log] [blame]
Guido van Rossum58dd0351992-12-17 17:32:35 +00001# Simple interface to report execution times of program fragments.
2# Call TSTART() to reset the timer, TSTOP(...) to report times.
3
Guido van Rossume3cafbe1992-12-14 23:25:04 +00004import sys, os, time
5
6def TSTART():
Tim Peterse6ddc8b2004-07-18 05:56:09 +00007 global t0, t1
8 u, s, cu, cs = os.times()
9 t0 = u+cu, s+cs, time.time()
Guido van Rossume3cafbe1992-12-14 23:25:04 +000010
11def TSTOP(*label):
Tim Peterse6ddc8b2004-07-18 05:56:09 +000012 global t0, t1
13 u, s, cu, cs = os.times()
14 t1 = u+cu, s+cs, time.time()
15 tt = []
16 for i in range(3):
17 tt.append(t1[i] - t0[i])
18 [u, s, r] = tt
19 msg = ''
20 for x in label: msg = msg + (x + ' ')
21 msg = msg + '%r user, %r sys, %r real\n' % (u, s, r)
22 sys.stderr.write(msg)