dtraseasm profiler
Eugeniu Rabii
eugen.rabii at gmail.com
Fri Feb 14 21:37:13 UTC 2020
Hello,
I am trying to run dtraceasm on Mac with JMH, here are my settings:
JMH version is 1.24-SNAPSHOT (I build it from sources)
Mac Version is 10.15.3 (the latest one)
dtrace is at : Sun D 1.15
jdk version: openjdk version "13.0.2" 2020-01-14
csrutil status: System Integrity Protection status: disabled.
The first issue is that is that under these settings,
DTraceAsmProfier.java fails with an IllegalStateException, but the fix
for this is trivial:
Collection<String> messages =Utils.destroy(dtraceProcess); if (!messages.isEmpty() && !messages.iterator().next().equals("")) {
throw new IllegalStateException(messages.toString()); }
on line 90.
No matter the @Benchmark I write (and run it with: java -jar
target/benchmarks.jar -prof dtraceasm:hotThreshold=0.01 ), the result is
always the same, for example:
# Processing profiler results: DTraceAsmProfiler
Result "org.sample.MyBenchmark.left":
27580.157 ±(99.9%) 616.272 ns/op [Average]
(min, avg, max) = (27452.109, 27580.157, 27854.915), stdev = 160.044
CI (99.9%): [26963.885, 28196.429] (assumes normal distribution)
Secondary result "org.sample.MyBenchmark.left:·asm":
PrintAssembly processed: 35658 total address lines.
Perf output processed (skipped 17.278 seconds):
Column 1: sampled_pc (0 events)
WARNING: No hottest code region above the threshold (0.01%) for disassembly.
Use "hotThreshold" profiler option to lower the filter threshold.
....[Hottest
Regions]...............................................................................
....................................................................................................
<totals>
....[Hottest Methods (after
inlining)]..............................................................
....................................................................................................
<totals>
....[Distribution by
Source]........................................................................
....................................................................................................
<totals>
WARNING: The perf event count is suspiciously low (0). The performance
data might be
inaccurate or misleading. Try to do the profiling again, or tune up the
sampling frequency.
With some profilers on Mac OS X, System Integrity Protection (SIP) may
prevent profiling.
In such case, temporarily disabling SIP with 'csrutil disable' might help.
Is there anything else I can try?
Thank you,
Eugene.
More information about the jmh-dev
mailing list