By Darryl Gove-Oracle on Feb 27, 2008
I've an old article on using data from BIT to examine the behaviour of branches in code, and using that to see whether a training workload is representative of the real work the application does. The article contains a couple of scripts for parsing the output from BIT to generate the appropriate results and graphs.
I've just been helping out in looking at branch data once again, this time breaking down the branch probabilities by the condition codes of the branch. The code to do this is relatively easy, but its annoying to have to write it yourself, this is my code for breaking down branch frequencies by condition code. The output is somewhat cryptic, for each condition code it will print out columns for whether the branch was annulling (a) or not (n), and predicted taken (pt), predicted not taken (pn), or not predicted(no).