Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 102373
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T00:57:03+00:00 2026-05-11T00:57:03+00:00

What are some good end to end CPU profilers that exist for Java? Quick

  • 0

What are some good end to end CPU profilers that exist for Java?

Quick list of things I’m looking for:

  1. Offline profiling – No user interaction or GUI required during program execution. Dumping the profile data to a file and then requiring viewing afterwards with a GUI is fine, I just don’t want to have to babysit it as the job runs
  2. End to End recording – Profiler should be able to start recording immediately after entering the main call for a J2SE application. It should stop recording immediately before the JVM exits.
  3. Call graph generation – After profiling, it’d be nice to turn the data into a visual call graph.

Google has a nice profiler for C/C++ – http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html

If the Java equivalent of this exists, it’d be exactly what I’m looking for.

I’m not including HProf in my list of prospective profilers because it performs badly compared to other commercial profilers I’ve looked at when you use accurate CPU call profiling (Usually done via Byte Code Injection, which is slow, but HProf appears at least an order of magnitude slower than other profilers, and when a single sampling profile run takes 1-2 hours, waiting more than a day for the same run is unacceptable)

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T00:57:04+00:00Added an answer on May 11, 2026 at 12:57 am

    My favorite, by far, is JProfiler. I didn’t realize it until just now (because I always use the interactive profiling GUI), but it does in fact support offline profiling, exactly like you described.

    A few other cool features:

    • It profiles all your SQL statements, so you can see which DB queries are slowing you down.

    • It keeps track of which methods (in which classes & packages) are allocating the most memory, for which types of objects & arrays, and the longevity of those objects. So, if you’re leaking memory, it’s easy to track down which types of class instances are outliving their usefullness, and to find the methods where those objects were originally allocated (and who’s holding the references that are keeping the objects alive).

    • You can keep track of the VM growth, monitoring the frequency of GC full collections, and determining how many objects (of which type) were freed during each collection cycle.

    • And of course, you get a hierarchical breakdown of all method invocations, with the number of calls and mean execution time (exclusive or inclusive) of the whole call stack. You can also view this hierarchy from the perspective of ‘worst bottleneck’ functions, ordered either by execution time or memory allocation.

    For me, JProfiler is one of the most important tools in my development process (second only to Eclipse).


    Also: there’s a free 10-day trial. Download it and check it out. And, btw, I’m not affiliated with the company or anything. I’ve just been a happy customer for the last five or six years.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 155k
  • Answers 155k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Anders Hejlsberg gave a couple great introductory talks about LINQ… May 12, 2026 at 10:36 am
  • Editorial Team
    Editorial Team added an answer If you implement the method - (NSSize)windowWillResize:(NSWindow *)sender toSize:(NSSize)frameSize on… May 12, 2026 at 10:36 am
  • Editorial Team
    Editorial Team added an answer If you want to check for events that occur within… May 12, 2026 at 10:36 am

Related Questions

UPDATE - A comprehensive comparison, updated as of February 2015, can be found here:
If I want to expand a C macro, what are some good ways to
What are some good patterns for error handling in VBA? In particular, what should
I would like to know how .NET teams out there are handling assembly reference

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.