Re: missing Java method information in operf profile
Maynard Johnson <[email protected]>
| Newsgroups | gmane.linux.oprofile |
|---|---|
| Message-ID | <[email protected]> |
On 08/25/2014 07:18 PM, Brian Hall wrote: > On 08/25/2014, Maynard Johnson wrote: >> On 08/25/2014 01:01 PM, Brian Hall wrote: >>> I'm running the operf from AT 7.0-5 on a POWER8 system: >>> # /opt/at7.0/bin/operf -v >>> /opt/at7.0/bin/operf: oprofile 1.0.0git compiled on Jul 24 2014 13:49:08 >>> using the command (as root): >>> /opt/at7.0/bin/operf --events PM_RUN_CYC:10290000 --separate-thread --separate-cpu --system-wide >>> >>> There are 14 active JVM processes running on the system that I am trying to profile. For some reason, the profiles only contain full JIT compiler method information for 2 or 3 of the processes (it varies across different runs). I have checked that the agentlib option is being correctly passed to the JVMs, and that the JIT dump files for all 14 processes are available in /tmp/.oprofile/jitdump at the time that operf is run. >>> >>> A casual look at verbose output from operf didn't indicate any problems in accessing the JIT dump files, it just didn't try to process all of them. I tried adding --lazy-conversion to the operf options, and that run did show an issue at the end of the verbose output: >>> add sym: name=Ljava/utilchild received signal 9 >>Hi, Brian, >>This sounds similar to a problem that was reported on this list on July 30 by Andrew Haley regarding an ill-advised hard-coded timeout. Andrew's problem has been fixed upstream now, but if you were running into that exact problem, using --lazy-conversion would have resolved it. Looking at the code now, I see there is a second hard-coded timeout. The one I got rid of was where the main operf thread is waiting for the oper_read_pid to finish. There's another one, where the operf_read_pid is waiting for yet another process to finish . . . which was started via exec to do the JIT dump conversion. The timeout for the actual JIT dump conversion is 2 seconds. It appears you've hit that limit. >> >>I'm attaching a patch that should resolve this, if you could please test it. >> > > Hi Maynard, > The patch worked perfectly, with or without --lazy-conversion. Thanks! > Brian Brian, thanks for reporting the problem and testing the fix. I pushed the patch upstream, and I'll ensure it's included in 1.0.0 GA. -Maynard > >>Thanks. >>-Maynard >>> >>> Brian > ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/