Time 595 B

1234567891011121314151617181920212223
  1. #!/bin/rc
  2. rfork e
  3. cmd=$1
  4. echo '#' $1
  5. echo measuring $1... >'#c/cons'
  6. rm -f /tmp/bench.time
  7. rc -c $cmd >'#c/cons' # warm cache and be able to see the output of the cmd...
  8. echo >/dev/sysstat
  9. for(i in `{seq 10}){
  10. time rc -c $cmd >/dev/null >>[2]/tmp/bench.time
  11. tail -1 /tmp/bench.time
  12. tail -1 /tmp/bench.time >'#c/cons'
  13. }
  14. cp /dev/sysstat /tmp/sysstat
  15. sed 's/[sur]//g' </tmp/bench.time |
  16. awk 'BEGIN{u=0.0; s=0.0; t=0.0}
  17. {u += $1; s += $2; t += $3}
  18. END{printf("times %g %g %g\n", u/NR, s/NR, t/NR);}'
  19. rm -f /tmp/bench.time
  20. cat /dev/debug
  21. echo #/dev/sysstat for 10 runs
  22. cat /tmp/sysstat
  23. exit ''