- if t >= 1.0:
- return '%.3f s' % t
- elif t >= 0.001:
- return '%.3f ms' % (t * 1000.0)
- elif t >= 0.000001:
- return '%.3f μs' % (t * 1000.0 * 1000.0)
- elif t >= 0.000000001:
- return '%.3f ns' % (t * 1000.0 * 1000.0 * 1000.0)
+ if abs(t) >= 1.0:
+ return '%.3f s (%.3f Hz)' % (t, (1/t))
+ elif abs(t) >= 0.001:
+ if 1/t/1000 < 1:
+ return '%.3f ms (%.3f Hz)' % (t * 1000.0, (1/t))
+ else:
+ return '%.3f ms (%.3f kHz)' % (t * 1000.0, (1/t)/1000)
+ elif abs(t) >= 0.000001:
+ if 1/t/1000/1000 < 1:
+ return '%.3f μs (%.3f kHz)' % (t * 1000.0 * 1000.0, (1/t)/1000)
+ else:
+ return '%.3f μs (%.3f MHz)' % (t * 1000.0 * 1000.0, (1/t)/1000/1000)
+ elif abs(t) >= 0.000000001:
+ if 1/t/1000/1000/1000:
+ return '%.3f ns (%.3f MHz)' % (t * 1000.0 * 1000.0 * 1000.0, (1/t)/1000/1000)
+ else:
+ return '%.3f ns (%.3f GHz)' % (t * 1000.0 * 1000.0 * 1000.0, (1/t)/1000/1000/1000)