Top-down performance cross-section of GFS

The percentages displayed show total percent of over-all processing. Therefore, if one line says 90%, it takes up 90% of all cycles in the program.
The screenshot shows nested methods where lower methods are called by higher methods. A large gap in percentage from one to the next shows that the first one contains a large degree of processing (then again, this may include calls to other expensive methods)
Here in HMMScoreClass maximumScore takes up 75.3% of computations. Combined, getBinForIntensity, getIonTypes and NSPopAutoreleasePool account for 69.6% which leaves only 5.7% in maximumScore.
When it comes to optimizing, one shouldn’t discount the calling parent function. Perhaps there is an ineffecient loop which is calling a more expensive routine.