system profilers and incomplete stacks
Staffan Larsen
staffan.larsen at oracle.com
Mon Jun 16 11:04:58 UTC 2014
I think this is the bug you are looking at: https://bugs.openjdk.java.net/browse/JDK-7187999, but I’ll defer to someone else to confirm.
/Staffan
On 16 jun 2014, at 12:47, Roland Westrelin <roland.westrelin at oracle.com> wrote:
> Forwarding to serviceability alias where this question belongs I think.
>
> Begin forwarded message:
>
>> From: Brendan Gregg <brendan.d.gregg at gmail.com>
>> Subject: system profilers and incomplete stacks
>> Date: June 12, 2014 at 7:15:54 PM GMT+2
>> To: hotspot-compiler-dev at openjdk.java.net
>>
>> G'Day,
>>
>> Is there a way to run hotspot so that a system profiler (eg, DTrace, or Linux perf_events) can measure complete stacks? I often get incomplete, partial stacks, with one or a few frames only. I'm not worried about symbols right now, what I'd like is to walk stacks all the way down to thread start.
>>
>> I've been browsing the hotspot code, but haven't found out how yet. I suspect it's related to Java optimized frames, and has ditched the frame pointer. I was looking for an equivalent -fno-omit-frame-pointer option.
>>
>> Here's an example:
>>
>> # dtrace -n 'profile-99 /execname == "java"/ { @[jstack(100, 8000)] = count(); }'
>> [...]
>> org/mozilla/javascript/
>> ScriptableObject.createSlot(Ljava/lang/String;II)Lorg/mozilla/javascript/ScriptableObject$Slot;*
>> 0x884acce8200002da
>> 1
>>
>> sun/nio/ch/SocketChannelImpl.read(Ljava/nio/ByteBuffer;)I*
>> 0xffffffff20007f4b
>> 1
>>
>> org/mozilla/javascript/ScriptRuntime.newObjectLiteral([Ljava/lang/Object;[Ljava/lang/Object;[ILorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;*
>> 0xa20000041
>> 1
>> [...]
>>
>> I see similar incomplete stacks with Linux perf_events. Oracle JDKs from 6 to 8, and OpenJDK.
>>
>> thanks,
>>
>> Brendan
>> --
>> http://www.brendangregg.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20140616/a35c52b1/attachment.html>
More information about the serviceability-dev
mailing list