[PATCH] Convert to using on-the-fly RB trees, no post-traversal.
authorAlan David Brunelle <Alan.Brunelle@hp.com>
Tue, 3 Oct 2006 12:44:18 +0000 (14:44 +0200)
committerJens Axboe <jens.axboe@oracle.com>
Tue, 3 Oct 2006 12:44:18 +0000 (14:44 +0200)
commit6eb42155679cfa6fcd03d23199c5ba0a233b53e7
tree88882783654bff6086c81f3c73bc2cefb00862cc
parentd216e9ce50602b7a7f99e1196e42d52d00f1b4f5
[PATCH] Convert to using on-the-fly RB trees, no post-traversal.

From: Alan D. Brunelle <Alan.Brunelle@hp.com>

- Converted to using RB trees as much as possible - significant speed
  up in general.

- Changed from constructing IO bushes to just doing things inline as we
  get the traces. Significant speed up and reduction in complexity.
  Lost ability to absolutely handle REQUEUE traces (may put out the wrong
  min/max information for certain stats).

- Added btt/dip_rb.c
- Removed btt/traverse.c btt/iofree.c btt/cylist.c
- Fixed message concerning stats & range data to include '.dat'
- Added in timing statistics (K traces per second handled)
- Changed verbose to just update once per second
- Added notions of "foreach" iterators for devices, processes, IO traces, ...
- Removed a lot of redundant code in output (using iterators instead)
- If not interested in seek information, don't calculate a lot of stuff -
  again, significant speed up.

Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 files changed:
btt/Makefile
btt/args.c
btt/bt_timeline.c
btt/cylist.c [deleted file]
btt/devmap.c
btt/devs.c
btt/dip_rb.c [new file with mode: 0644]
btt/globals.h
btt/inlines.h
btt/iofree.c [deleted file]
btt/iostat.c
btt/misc.c
btt/output.c
btt/proc.c
btt/seek.c
btt/trace.c
btt/traverse.c [deleted file]