G'Day dtrace-discuss,

I saw an opportunity to demo DTrace recently, but jstack() for the Oracle
JVM keeps returning incomplete stacks. I've tried a number of different JDK
versions from 6 to 8, and options including libdtrace_forceload.so. Anyone
know of a JDK version or workaround that does jstack() reliably?

# 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
[...]

A flame graph based on this output is more than 50% stacks like this. It
looks a lot like omit frame pointer optimization, but there is no
-XX:-omit-frame-pointer option I can find. :-)

I can use other profilers, but wanted to give DTrace a shot at this. Thanks,

Brendan

-- 
http://www.brendangregg.com



-------------------------------------------
dtrace-discuss
Archives: https://www.listbox.com/member/archive/184261/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184261/25769126-e243886f
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769126&id_secret=25769126-8d47a7b2
Powered by Listbox: http://www.listbox.com

Reply via email to