Package org.openjdk.jmh.profile
Class LinuxPerfAsmProfiler
java.lang.Object
org.openjdk.jmh.profile.AbstractPerfAsmProfiler
org.openjdk.jmh.profile.LinuxPerfAsmProfiler
- All Implemented Interfaces:
ExternalProfiler
,Profiler
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.openjdk.jmh.profile.AbstractPerfAsmProfiler
AbstractPerfAsmProfiler.ASMLine, AbstractPerfAsmProfiler.Assembly, AbstractPerfAsmProfiler.GeneratedRegion, AbstractPerfAsmProfiler.MethodDesc, AbstractPerfAsmProfiler.NativeRegion, AbstractPerfAsmProfiler.PerfEvents, AbstractPerfAsmProfiler.Region, AbstractPerfAsmProfiler.UnknownRegion
-
Field Summary
FieldsFields inherited from class org.openjdk.jmh.profile.AbstractPerfAsmProfiler
hsLog, perfBinData, perfParsedData, requestedEventNames, set
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddJVMInvokeOptions
(BenchmarkParams params) Prepend JVM invocation with these commands.protected void
addMyOptions
(joptsimple.OptionParser parser) Human-readable one-line description of the profiler.protected void
Parse profiler events from binary to text form.(package private) static LinuxPerfAsmProfiler.PerfLine
parsePerfLine
(String line) protected String
Get perf binary data extension (optional).protected AbstractPerfAsmProfiler.PerfEvents
readEvents
(double skipMs, double lenMs) Read parsed events.stripEventNames
(List<String> events) Some profilers strip modifiers from event names.stripPerfEventNames
(List<String> events) Methods inherited from class org.openjdk.jmh.profile.AbstractPerfAsmProfiler
addJVMOptions, afterTrial, allowPrintErr, allowPrintOut, beforeTrial
-
Field Details
-
sampleFrequency
private final long sampleFrequency -
optFrequency
-
-
Constructor Details
-
LinuxPerfAsmProfiler
- Throws:
ProfilerException
-
-
Method Details
-
addMyOptions
protected void addMyOptions(joptsimple.OptionParser parser) - Specified by:
addMyOptions
in classAbstractPerfAsmProfiler
-
addJVMInvokeOptions
Description copied from interface:ExternalProfiler
Prepend JVM invocation with these commands.- Parameters:
params
- benchmark parameters used for current launch- Returns:
- commands to prepend for JVM launch
-
getDescription
Description copied from interface:Profiler
Human-readable one-line description of the profiler.- Returns:
- description
-
parseEvents
protected void parseEvents()Description copied from class:AbstractPerfAsmProfiler
Parse profiler events from binary to text form.- Specified by:
parseEvents
in classAbstractPerfAsmProfiler
-
parsePerfLine
-
readEvents
Description copied from class:AbstractPerfAsmProfiler
Read parsed events.- Specified by:
readEvents
in classAbstractPerfAsmProfiler
- Parameters:
skipMs
- Milliseconds to skip.lenMs
- Milliseconds to capture after skip- Returns:
- Events.
-
perfBinaryExtension
Description copied from class:AbstractPerfAsmProfiler
Get perf binary data extension (optional).- Specified by:
perfBinaryExtension
in classAbstractPerfAsmProfiler
- Returns:
- Extension.
-
stripEventNames
Description copied from class:AbstractPerfAsmProfiler
Some profilers strip modifiers from event names. To properly match the events in shared code, we need to know what those events were stripped to.- Overrides:
stripEventNames
in classAbstractPerfAsmProfiler
- Returns:
- stripped events
-
stripPerfEventNames
-