Profiling the profilers

A comparative review of three commercial Java code profilers

Modern software is such an unwieldy multidimensional beast that no single development tool can ever hope to give programmers the complete picture of their creations. Even performance—that elusive metric we all love to hate when our code struggles with second gear, and love, when our code travels at O(1) speed—consists of many devilishly interlocked facets.

Performance's proverbial tip of the iceberg consists of the subjective, user-tangible perception of program speed and responsiveness. If we temporarily eliminate the user from the equation, then we can equate performance with the sum effect of objective performance facets such as algorithm choice, overall memory usage, object allocation and de-allocation dynamics, and multithreading design and runtime behavior. Helping you to understand your program's dynamic behavior in these select dimensions is the burdensome job of code profilers.

In this article, I look at three commercial Java profilers and determine which ones come close to satisfying your, and my, needs:

  • Borland's Optimizeit Suite
  • Quest Software's JProbe Suite
  • ej-technologies' JProfiler
1 2 3 Page 1
Page 1 of 3