mozilla/socorro — pull request #1151 by twobraids (2013-03-24 15:00:01+00:00)
Title: fixes Bug 854173: added benchmarking to basic FTS app (crashmover)

this is an experiment in benchmarking the crashmover. It times the four steps of moving a crash from one storage system to another:
get_raw_cash
get_raw_dump
save_raw_crash
remove

This PR does not (yet) benchmark the walking of the filesystem tree. The requested output on one line is quite difficult to do because it would require a new level of coordination between threads. The 'new_crashes' (ie. the file system walk) takes place on the queueing thread, while the other four steps take place on the worker thread.

To get benchmark of the file system walk, one would benchmark not the yield, but the time from just after the yield to just before the yield. Because the walk and the move happen in parallel on different threads, the sum of the two benchmark times may not be particularly meaningful.

Another interesting benchmark may be thread idle time. How long does a thread sit around idle waiting to be assigned work?

Give me some feedback and direction on this and I'll complete it.