Sunday, July 27, 2008

Profiler Integration

I've run the profiler plugin with jmemprof support, but it has some disadvantages:
  • Doesn't have timings support
  • Doesn't run on j2se 6+
  • The profiler haven't been updated since year 2005
  • SC starts working very slowly with it, about 5 times slower than usual.
But I found another profiler that supports timings and is more agile than other profilers - JIP, you can find information how the profiler is build in the article "Build your own profiling tool" by the project's author Andrew Wilcox.

I tried JIP with SC and got the next results:

Pluses:
  • Has timings support
  • Runs on j2se 5+, the profiler needs the version 5 too hook the classloader.
  • SC is working almost as fast as usually.
  • It outputs the results in txt and xml formats
  • Has GUI for the results




Minuses:

  • It doesn't support memory analyzing
  • The results can be reprsented in GUI only by using the xml file with the results as an input.
  • You need to siwtch off and on the profiler to update the results (may be there is any other possibility)
  • The updated results don't contain previous ones after profiler stop/start issues (so called updates)

Next steps:

  • Now the profiler gives mostly the timings of OSGI framework, I'll need SC ones.
  • Try to get bundle separated results by package filtering.

No comments: