Top-down performance cross-section of GFS

by Brian | 7th July 2009

Picture 2

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.

Leave a Reply

Name (Required)

Email (Required - will not be published)

Website

Message (Required)