Package org.spongepowered.asm.util.perf
Class Profiler
java.lang.Object
org.spongepowered.asm.util.perf.Profiler
Performance profiler for Mixin.
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionBegin a new profiler section using the specified name and flagsBegin a new profiler section using the specified path and flagsBegin a new profiler section using the specified nameBegin a new profiler section using the specified pathGet the specified profiler sectionstatic ProfilergetProfiler(String id) Get the specified performance profilerstatic Collection<Profiler> Get all available performance profilersGet all recorded profiler sectionsvoidMark a new phase (time slice) for this profiler, all sections record their current times and then reset to zero.static voidPrint summary of mixin performance from all active profilers to the consoleprinter(boolean includeFine, boolean group) Get the profiler state with all sections in aPrettyPrinter.voidPrint summary of this profiler's recorded performance to the consolevoidreset()Reset all profiler statestatic voidsetActive(boolean active) Set the active state of the profiler.toString()
-
Field Details
-
ROOT
public static final int ROOTFlag to indicate a root section. Root sections are always recorded at the root wherever they occur, but may appear under other sections in order to show the time share of the root section relative to the parent.- See Also:
-
FINE
public static final int FINEFlag to indicate a fine section. Fine sections are always recorded, but are only displayed in the printed output if the includeFine flag is set.- See Also:
-
-
Constructor Details
-
Profiler
-
-
Method Details
-
toString
-
setActive
public static void setActive(boolean active) Set the active state of the profiler.- Parameters:
active- new active state
-
reset
public void reset()Reset all profiler state -
get
Get the specified profiler section- Parameters:
name- section name- Returns:
- profiler section
-
begin
Begin a new profiler section using the specified path- Parameters:
path- path parts- Returns:
- new profiler section
-
begin
Begin a new profiler section using the specified path and flags- Parameters:
flags- section flagspath- path parts- Returns:
- new profiler section
-
begin
Begin a new profiler section using the specified name- Parameters:
name- section name- Returns:
- new profiler section
-
begin
Begin a new profiler section using the specified name and flags- Parameters:
flags- section flagsname- section name- Returns:
- new profiler section
-
mark
Mark a new phase (time slice) for this profiler, all sections record their current times and then reset to zero. If no times have been recorded in the current phase, the phase is discarded.- Parameters:
phase- Name of the phase
-
getSections
Get all recorded profiler sections -
printer
Get the profiler state with all sections in aPrettyPrinter.- Parameters:
includeFine- Include sections marked as FINEgroup- Group delegated sections with their root instead of in the normal alphabetical order- Returns:
- PrettyPrinter with section data
-
printSummary
public void printSummary()Print summary of this profiler's recorded performance to the console -
printAuditSummary
public static void printAuditSummary()Print summary of mixin performance from all active profilers to the console -
getProfiler
Get the specified performance profiler- Parameters:
id- Profiler id- Returns:
- profiler
-
getProfilers
Get all available performance profilers- Returns:
- immutable collection of profilers
-