Index
All Classes and Interfaces|All Packages|Constant Field Values
A
- add(int, T) - Method in class io.perl.api.impl.ConcurrentLinkedQueueArray
- add(int, T) - Method in class io.perl.api.impl.CQueueArray
- add(int, T) - Method in interface io.perl.api.QueueArray
-
Add an element to the queue identified by index.
- add(T) - Method in class io.perl.api.impl.AtomicQueue
- add(T) - Method in class io.perl.api.impl.CQueue
- add(T) - Method in class io.perl.api.impl.SyncQueue
- add(T) - Method in interface io.perl.api.Queue
-
Add data of type T to queue.
- appendResultString(StringBuilder, double, long, long, double, double, double, long, long, long, long, long, long, long, long[]) - Method in class io.perl.logger.impl.ResultsLogger
-
Method buildResultString builds all result and return in String format.
- ArrayLatencyRecorder - Class in io.perl.api.impl
-
class for Performance statistics.
- ArrayLatencyRecorder(long, long, long, long, long, double[], Time) - Constructor for class io.perl.api.impl.ArrayLatencyRecorder
-
Constructor ArrayLatencyRecorder initialize all values.
- AtomicQueue<T> - Class in io.perl.api.impl
- AtomicQueue() - Constructor for class io.perl.api.impl.AtomicQueue
- avgLatencyName - Variable in class io.perl.logger.impl.Metrics
-
String avgLatencyName.
B
- BEGIN - Enum constant in enum class io.state.State
-
BEGIN = 0. - build() - Static method in class io.perl.config.PerlConfig
-
Build configuration by loading the default
perl.propertiesfrom the classpath. - build(PerformanceLogger, Time, PerlConfig, ExecutorService) - Static method in class io.perl.api.impl.PerlBuilder
-
Build CQ (Concurrent Queue) based Perl.
- build(InputStream) - Static method in class io.perl.config.PerlConfig
-
Build configuration by reading properties from the given input stream.
- buildLatencyRecordWindow(LatencyConfig, Time, long, long, double[]) - Static method in class io.perl.api.impl.PerlBuilder
-
Build Latency Record Window using configured strategy (array or hashmap) depending on memory estimation and latency range.
- buildTime(PerformanceLogger) - Static method in class io.perl.api.impl.PerlBuilder
-
Build 'Time' object based on Performance logger.
- bytes - Variable in class io.perl.api.TimeStamp
-
Size in bytes for the event(s).
- Bytes - Class in io.perl.data
-
Utility constants for byte size conversions used across the PerL module.
- Bytes() - Constructor for class io.perl.data.Bytes
- BYTES_PER_GB - Static variable in class io.perl.data.Bytes
-
Number of bytes per gigabyte.
- BYTES_PER_KB - Static variable in class io.perl.data.Bytes
-
Number of bytes per kilobyte.
- BYTES_PER_MB - Static variable in class io.perl.data.Bytes
-
Number of bytes per megabyte.
- bytesName - Variable in class io.perl.logger.impl.Metrics
-
String bytesName.
C
- Channel - Interface in io.perl.api
-
Channel is a combined API that exposes both producer and consumer behavior for the PerL internals.
- channels - Variable in class io.perl.api.PerformanceRecorder
- checkTotalWindowFullAndReset(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
-
Check if the total window is full and flush/reset its contents.
- checkWindowFullAndReset(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
-
Check if the current window is full and, if so, stop and restart it.
- clear() - Method in interface io.perl.api.Channel
-
Clear the channel of any pending data and reset its internal state.
- clear() - Method in class io.perl.api.impl.AtomicQueue
- clear() - Method in class io.perl.api.impl.ConcurrentLinkedQueueArray
- clear() - Method in class io.perl.api.impl.CQueue
- clear() - Method in class io.perl.api.impl.CQueueArray
- clear() - Method in class io.perl.api.impl.SyncQueue
- clear() - Method in interface io.perl.api.Queue
-
Clear queue and reset internal state.
- clear() - Method in interface io.perl.api.QueueArray
-
Clear all queues in the array.
- clear(int) - Method in class io.perl.api.impl.ConcurrentLinkedQueueArray
- clear(int) - Method in class io.perl.api.impl.CQueueArray
- clear(int) - Method in interface io.perl.api.QueueArray
-
Clear the queue at the specified index.
- close() - Method in class io.perl.logger.impl.PrintMetrics
-
This method Closes this registry, releasing any resources in the process.
- ConcurrentLinkedQueueArray<T> - Class in io.perl.api.impl
- ConcurrentLinkedQueueArray(int) - Constructor for class io.perl.api.impl.ConcurrentLinkedQueueArray
- convertToMicroSeconds(double) - Method in class io.time.MicroSeconds
-
convert the time to Micro seconds.
- convertToMicroSeconds(double) - Method in class io.time.MilliSeconds
-
convert the time to Micro seconds.
- convertToMicroSeconds(double) - Method in class io.time.NanoSeconds
-
convert the time to Micro seconds.
- convertToMicroSeconds(double) - Method in interface io.time.Time
-
convert the time to Micro seconds.
- convertToMilliSeconds(double) - Method in class io.time.MicroSeconds
-
convert the time to Milliseconds.
- convertToMilliSeconds(double) - Method in class io.time.MilliSeconds
-
convert the time to Milliseconds.
- convertToMilliSeconds(double) - Method in class io.time.NanoSeconds
-
convert the time to Milliseconds.
- convertToMilliSeconds(double) - Method in interface io.time.Time
-
convert the time to Milliseconds.
- convertToNanoSeconds(double) - Method in class io.time.MicroSeconds
-
convert the time to Nanoseconds.
- convertToNanoSeconds(double) - Method in class io.time.MilliSeconds
-
convert the time to Nanoseconds.
- convertToNanoSeconds(double) - Method in class io.time.NanoSeconds
-
convert the time to Nanoseconds.
- convertToNanoSeconds(double) - Method in interface io.time.Time
-
convert the time to Nanoseconds.
- copyLatency(long, long, long, long) - Method in class io.perl.api.LatencyPercentiles
-
Copy latency for a bucket spanning [startIndex, endIndex).
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.impl.ArrayLatencyRecorder
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.impl.MapLatencyRecorder
- copyPercentiles(LatencyPercentiles, ReportLatencies) - Method in class io.perl.api.LatencyWindow
-
get the Percentiles.
- CQueue<T> - Class in io.perl.api.impl
- CQueue() - Constructor for class io.perl.api.impl.CQueue
- CQueueArray<T> - Class in io.perl.api.impl
- CQueueArray(int) - Constructor for class io.perl.api.impl.CQueueArray
- CQueuePerl - Class in io.perl.api.impl
-
Class for Concurrent Queue based PerL.
- CQueuePerl(PerlConfig, PeriodicRecorder, int, Time, ExecutorService) - Constructor for class io.perl.api.impl.CQueuePerl
-
Constructor CQueuePerl initialize all values.
- csv - Variable in class io.perl.config.LatencyConfig
-
Whether CSV output is enabled.
- CSVExtendedLatencyRecorder - Class in io.perl.api.impl
-
Class CSVExtendedLatencyRecorder.
- CSVExtendedLatencyRecorder(long, long, long, long, long, double[], Time, LatencyRecordWindow, int, String) - Constructor for class io.perl.api.impl.CSVExtendedLatencyRecorder
-
Constructor CSVExtendedLatencyRecorder pass all values to its super class and initialize
CSVExtendedLatencyRecorder.latencyBufferandCSVExtendedLatencyRecorder.csvReporter. - csvFileSizeGB - Variable in class io.perl.config.LatencyConfig
-
Maximum size (in GB) for generated CSV files.
D
- DEFAULT_MAX_LATENCY - Static variable in class io.perl.config.LatencyConfig
-
Default maximum latency expected (in milliseconds).
- DEFAULT_MIN_LATENCY - Static variable in class io.perl.config.LatencyConfig
-
Default minimum latency expected (in milliseconds).
- DEFAULT_PRINTING_INTERVAL_SECONDS - Static variable in class io.perl.config.PerlConfig
-
Default interval (in seconds) between periodic status/metrics prints.
- DEFAULT_RUNTIME_SECONDS - Static variable in class io.perl.config.PerlConfig
-
Default maximum runtime (in seconds) if not otherwise limited.
- DEFAULT_TIMEOUT_MS - Static variable in class io.perl.config.PerlConfig
-
Default timeout (in milliseconds) for internal operations.
- DefaultLogger - Class in io.perl.logger.impl
-
Simple textual results logger that prints the formatted summary to stdout.
- DefaultLogger() - Constructor for class io.perl.logger.impl.DefaultLogger
-
Constructor DefaultLogger takes no arguments but initialize all values with default values.
- DefaultLogger(String, double[], TimeUnit, long, long) - Constructor for class io.perl.logger.impl.DefaultLogger
-
Constructor DefaultLogger pass all values to its super class.
- DefaultPrometheusLogger - Class in io.perl.logger.impl
-
Prometheus-enabled results logger.
- DefaultPrometheusLogger(String, double[], TimeUnit, long, long, Time, int, String, Iterable<Tag>) - Constructor for class io.perl.logger.impl.DefaultPrometheusLogger
-
Constructor DefaultPrometheusLogger pass values to super class and initialize server.
E
- elapsed(long, long) - Method in interface io.time.Time
-
get the duration between two time stamps.
- elapsedMilliSeconds(long) - Method in class io.perl.api.LatencyWindow
-
Get the elapsed time in milliseconds between the provided current time and the window start time.
- elapsedMilliSeconds(long, long) - Method in class io.time.MicroSeconds
-
get the current Time.
- elapsedMilliSeconds(long, long) - Method in class io.time.MilliSeconds
-
get the elapsed time .
- elapsedMilliSeconds(long, long) - Method in class io.time.NanoSeconds
-
get the current Time.
- elapsedMilliSeconds(long, long) - Method in interface io.time.Time
-
get the elapsed Time in milliseconds.
- elapsedMilliSecondsWindow(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
- elapsedMilliSecondsWindow(long) - Method in interface io.perl.api.PeriodicWindow
-
Get the current time duration of this window starting from startWindow.
- elapsedSeconds(long, long) - Method in class io.time.MicroSeconds
-
get the current Time.
- elapsedSeconds(long, long) - Method in class io.time.MilliSeconds
-
get the elapsed tiome.
- elapsedSeconds(long, long) - Method in class io.time.NanoSeconds
-
get the current Time.
- elapsedSeconds(long, long) - Method in interface io.time.Time
-
get the elapsed Time in seconds.
- ElasticWait - Class in io.perl.api.impl
-
Class ElasticWait.
- ElasticWait(int, int, int) - Constructor for class io.perl.api.impl.ElasticWait
-
Constructor ElasticWait initialize all values.
- END - Enum constant in enum class io.state.State
-
END = 2. - endTime - Variable in class io.perl.api.TimeStamp
-
Event end time (caller-defined time unit).
- ExceptionHandler - Interface in io.perl.exception
-
Simple callback interface for reporting exceptions from PerL internals to caller code.
F
- fractions - Variable in class io.perl.api.LatencyPercentiles
-
Percentile fractions (e.g.
G
- getCurrentTime() - Method in class io.time.MicroSeconds
-
get the current Time in Micro seconds.
- getCurrentTime() - Method in class io.time.MilliSeconds
-
get the current Time.
- getCurrentTime() - Method in class io.time.NanoSeconds
-
get the current Time.
- getCurrentTime() - Method in interface io.time.Time
-
get the current Time.
- getMaxLatency() - Method in class io.perl.logger.impl.ResultsLogger
- getMaxLatency() - Method in interface io.perl.logger.PerformanceLogger
-
Maximum latency value considered valid by the logger (default from
LatencyConfig). - getMaxMemoryBytes() - Method in class io.perl.api.impl.ArrayLatencyRecorder
- getMaxMemoryBytes() - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- getMaxMemoryBytes() - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- getMaxMemoryBytes() - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- getMaxMemoryBytes() - Method in class io.perl.api.impl.MapLatencyRecorder
- getMaxMemoryBytes() - Method in class io.perl.api.LatencyWindow
-
Return the maximum memory usage in bytes for the window's storage.
- getMinLatency() - Method in class io.perl.logger.impl.ResultsLogger
- getMinLatency() - Method in interface io.perl.logger.PerformanceLogger
-
Minimum latency value considered valid by the logger (default from
LatencyConfig). - getPercentileNames() - Method in class io.perl.logger.impl.ResultsLogger
- getPercentiles() - Method in class io.perl.logger.impl.ResultsLogger
- getPercentiles() - Method in interface io.perl.logger.PerformanceLogger
-
Percentile fractions (for example
0.5for the 50th percentile) that this logger expects to receive. - getPerlChannel() - Method in interface io.perl.api.GetPerlChannel
-
Returns a dedicated
PerlChannelinstance for the caller to submit benchmarking events. - getPerlChannel() - Method in class io.perl.api.impl.CQueuePerl
-
Get Perl channel.
- GetPerlChannel - Interface in io.perl.api
-
Capability interface for obtaining a dedicated
PerlChannel. - getPrefix() - Method in class io.perl.logger.impl.ResultsLogger
- getPrintingIntervalSeconds() - Method in interface io.perl.logger.PerformanceLogger
-
Reporting interval in seconds (default from
PerlConfig). - getTimeUnit() - Method in class io.perl.logger.impl.ResultsLogger
- getTimeUnit() - Method in interface io.perl.logger.PerformanceLogger
-
Time unit used to express latencies by this logger.
- getTimeUnit() - Method in class io.time.MicroSeconds
-
get the Time Unit.
- getTimeUnit() - Method in class io.time.MilliSeconds
-
get the Time Unit.
- getTimeUnit() - Method in class io.time.NanoSeconds
-
get the Time Unit.
- getTimeUnit() - Method in interface io.time.Time
-
get the Time Unit.
H
- HashMapLatencyRecorder - Class in io.perl.api.impl
-
class for Performance statistics.
- HashMapLatencyRecorder(long, long, long, long, long, double[], Time, int) - Constructor for class io.perl.api.impl.HashMapLatencyRecorder
-
Constructor HashMapLatencyRecorder initializing all values.
- HDR_SIGNIFICANT_DIGITS - Static variable in class io.perl.config.LatencyConfig
-
Number of significant digits used by HDR histograms.
- HdrExtendedLatencyRecorder - Class in io.perl.api.impl
-
Class HdrExtendedLatencyRecorder.
- HdrExtendedLatencyRecorder(long, long, long, long, long, double[], Time, LatencyRecordWindow) - Constructor for class io.perl.api.impl.HdrExtendedLatencyRecorder
-
Constructor HdrExtendedLatencyRecorder initializing all values.
- higherDiscardName - Variable in class io.perl.logger.impl.Metrics
-
String higherDiscardName. - higherLatencyDiscardRecords - Variable in class io.perl.api.LatencyRecord
-
Number of latency samples discarded because they exceeded the maximum threshold.
- highLatency - Variable in class io.perl.api.LatencyRecorder
-
Maximum accepted latency value (above this, samples are discarded).
- histogram - Variable in class io.perl.config.LatencyConfig
-
Whether histogram output is enabled.
I
- idleNS - Variable in class io.perl.config.PerlConfig
-
Idle time between operations (in nanoseconds).
- invalidLatencyRecords - Variable in class io.perl.api.LatencyRecord
-
Number of invalid/negative latency samples observed.
- invalidLatencyRecordsName - Variable in class io.perl.logger.impl.Metrics
-
String invalidLatencyRecordsName. - io.perl.api - package io.perl.api
- io.perl.api.impl - package io.perl.api.impl
- io.perl.config - package io.perl.config
- io.perl.data - package io.perl.data
- io.perl.exception - package io.perl.exception
- io.perl.logger - package io.perl.logger
- io.perl.logger.impl - package io.perl.logger.impl
- io.perl.system - package io.perl.system
- io.state - package io.state
- io.time - package io.time
- isEnd() - Method in class io.perl.api.TimeStamp
-
Checks if this timestamp is the end marker.
- isFull() - Method in class io.perl.api.impl.ArrayLatencyRecorder
- isFull() - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- isFull() - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- isFull() - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- isFull() - Method in class io.perl.api.impl.MapLatencyRecorder
- isFull() - Method in class io.perl.api.LatencyWindow
-
Indicates whether the underlying storage used by the window is full.
- isOverflow() - Method in class io.perl.api.LatencyRecorder
-
Checks whether any configured thresholds have been exceeded.
L
- latencies - Variable in class io.perl.api.LatencyPercentiles
-
Computed latency values for each configured percentile.
- latenciesCount - Variable in class io.perl.api.LatencyPercentiles
-
Counts for each percentile (populated during copyLatency).
- LATENCY_VALUE_SIZE_BYTES - Static variable in class io.perl.config.LatencyConfig
-
Size in bytes of a single latency value (64-bit long).
- LatencyConfig - Class in io.perl.config
-
Class LatencyConfig.
- LatencyConfig() - Constructor for class io.perl.config.LatencyConfig
- latencyIndexes - Variable in class io.perl.api.LatencyPercentiles
-
Target indexes, computed in
LatencyPercentiles.reset(long)for each percentile. - LatencyPercentiles - Class in io.perl.api
-
Helper that holds the configured percentile fractions and computed percentile latency results.
- LatencyPercentiles(double[]) - Constructor for class io.perl.api.LatencyPercentiles
-
Construct with the configured percentile fractions.
- LatencyRecord - Class in io.perl.api
-
Base class that holds aggregated latency and count statistics for a measurement window or total aggregation.
- LatencyRecord() - Constructor for class io.perl.api.LatencyRecord
-
Construct and reset counters.
- LatencyRecorder - Class in io.perl.api
-
Recorder that accumulates latency statistics and enforces configured bounds (min/max latencies and total thresholds).
- LatencyRecorder(long, long, long, long, long) - Constructor for class io.perl.api.LatencyRecorder
-
Construct a LatencyRecorder with configured thresholds.
- LatencyRecordWindow - Class in io.perl.api
-
Concrete extension of
LatencyWindowthat implements reporting interfaces to receive both per-latency and aggregated latency records. - LatencyRecordWindow(long, long, long, long, long, double[], Time) - Constructor for class io.perl.api.LatencyRecordWindow
-
Construct a latency record window with configured thresholds and percentiles.
- LatencyWindow - Class in io.perl.api
-
LatencyWindow aggregates latency and throughput data.
- LatencyWindow(long, long, long, long, long, double[], Time) - Constructor for class io.perl.api.LatencyWindow
-
Construct a latency window with configured thresholds and percentiles.
- log - Static variable in class io.perl.system.PerlPrinter
-
Logger instance for PerL internals.
- LONG_MAX - Static variable in class io.perl.config.LatencyConfig
-
Safety cap for individual latency counters to avoid overflow.
- LongHashMapLatencyRecorder - Class in io.perl.api.impl
- LongHashMapLatencyRecorder(long, long, long, long, long, double[], Time, int) - Constructor for class io.perl.api.impl.LongHashMapLatencyRecorder
-
Constructor LongHashMapLatencyRecorder initializing all values.
- lowerDiscardName - Variable in class io.perl.logger.impl.Metrics
-
String lowerDiscardName. - lowerLatencyDiscardRecords - Variable in class io.perl.api.LatencyRecord
-
Number of latency samples discarded because they were below the minimum threshold.
- lowLatency - Variable in class io.perl.api.LatencyRecorder
-
Minimum accepted latency value (below this, samples are discarded).
M
- MapLatencyRecorder - Class in io.perl.api.impl
-
class for Map based Performance statistics.
- MapLatencyRecorder(Map<Long, Long>, long, long, long, long, long, double[], Time, int) - Constructor for class io.perl.api.impl.MapLatencyRecorder
-
Constructor MapLatencyRecorder initializing all values.
- maxArraySizeMB - Variable in class io.perl.config.LatencyConfig
-
Maximum memory allowed (in MB) for array-based latency storage.
- maxHashMapSizeMB - Variable in class io.perl.config.LatencyConfig
-
Maximum memory allowed (in MB) for HashMap-based latency storage.
- maxLatency - Variable in class io.perl.api.LatencyRecord
-
Maximum observed latency.
- maxLatencyName - Variable in class io.perl.logger.impl.Metrics
-
String maxLatencyName. - maxQs - Variable in class io.perl.config.PerlConfig
-
Maximum number of queues allowed.
- mbPsecName - Variable in class io.perl.logger.impl.Metrics
-
String mbPsecName. - mcs - Enum constant in enum class io.time.TimeUnit
-
mcs { public String toString() {return "MICROSECONDS";} }. - medianIndex - Variable in class io.perl.api.LatencyPercentiles
-
Median index position used to detect median bucket.
- medianLatency - Variable in class io.perl.api.LatencyPercentiles
-
Median latency value (computed as the 50th percentile approximation).
- metricPrefix - Variable in class io.perl.logger.impl.Metrics
-
String metricPrefix. - Metrics - Class in io.perl.logger.impl
-
Metrics name builder used by metric-based logger implementations.
- Metrics(String, String, double[]) - Constructor for class io.perl.logger.impl.Metrics
-
Constructor Metrics for initializing All Values.
- metricTimeUnit - Variable in class io.perl.logger.impl.Metrics
-
String metricTimeUnit. - MICROS_PER_MS - Static variable in interface io.time.Time
-
MICROS_PER_MS = 1000. - MICROS_PER_SEC - Static variable in interface io.time.Time
-
MICROS_PER_SEC = MICROS_PER_MS * MS_PER_SEC. - MicroSeconds - Class in io.time
-
Class MicroSeconds.
- MicroSeconds() - Constructor for class io.time.MicroSeconds
- MilliSeconds - Class in io.time
-
Class MilliSeconds.
- MilliSeconds() - Constructor for class io.time.MilliSeconds
- MIN_IDLE_NS - Static variable in class io.perl.config.PerlConfig
-
Minimum idle time (in nanoseconds) used to yield between operations.
- MIN_Q_PER_WORKER - Static variable in class io.perl.config.PerlConfig
-
Minimum number of queues per worker.
- MIN_WORKERS - Static variable in class io.perl.config.PerlConfig
-
Minimum number of worker threads allowed.
- minLatency - Variable in class io.perl.api.LatencyRecord
-
Minimum observed latency; starts at Long.MAX_VALUE until samples are recorded.
- minLatencyName - Variable in class io.perl.logger.impl.Metrics
-
String minLatencyName. - ms - Enum constant in enum class io.time.TimeUnit
-
ms { public String toString() {return "MILLISECONDS";} }. - MS_PER_MIN - Static variable in interface io.time.Time
-
MS_PER_MIN = MS_PER_SEC * 60. - MS_PER_SEC - Static variable in interface io.time.Time
-
MS_PER_SEC = 1000.
N
- NAME - Static variable in class io.perl.config.PerlConfig
-
String NAME = "PerL". - NanoSeconds - Class in io.time
-
Class NanoSeconds.
- NanoSeconds() - Constructor for class io.time.NanoSeconds
- ns - Enum constant in enum class io.time.TimeUnit
-
ns { public String toString() {return "NANOSECONDS";} }. - NS_PER_MICRO - Static variable in interface io.time.Time
-
NS_PER_MICRO = 1000. - NS_PER_MS - Static variable in interface io.time.Time
-
NS_PER_MS = NS_PER_MICRO * MICROS_PER_MS. - NS_PER_SEC - Static variable in interface io.time.Time
-
NS_PER_SEC = MS_PER_SEC * NS_PER_MS.
P
- PERCENTILE_FORMAT - Static variable in class io.perl.config.LatencyConfig
-
Format string used when printing percentile values.
- percentileFormat - Variable in class io.perl.logger.impl.Metrics
-
DecimalFormat percentileFormat. - percentileLatencyCountNames - Variable in class io.perl.logger.impl.Metrics
-
String[] percentileNames. - percentileLatencyNames - Variable in class io.perl.logger.impl.Metrics
-
String[] percentileNames. - percentiles - Variable in class io.perl.api.LatencyWindow
- PERCENTILES - Static variable in class io.perl.config.LatencyConfig
-
Default percentiles to compute and report.
- PerformanceLogger - Interface in io.perl.logger
-
High-level logger interface used by the PerL framework to report benchmarking metrics.
- PerformanceRecorder - Class in io.perl.api
-
Base class for implementations that collect events from multiple channels and drive periodic recorders.
- PerformanceRecorder(PeriodicRecorder, Channel[], Time, int) - Constructor for class io.perl.api.PerformanceRecorder
-
Constructor to initialize performance recorder.
- PerformanceRecorderIdleBusyWait - Class in io.perl.api.impl
-
Class for Performance Recording.
- PerformanceRecorderIdleBusyWait(PeriodicRecorder, Channel[], Time, int, int) - Constructor for class io.perl.api.impl.PerformanceRecorderIdleBusyWait
-
Constructor to initialize values.
- PerformanceRecorderIdleSleep - Class in io.perl.api.impl
- PerformanceRecorderIdleSleep(PeriodicRecorder, Channel[], Time, int, int) - Constructor for class io.perl.api.impl.PerformanceRecorderIdleSleep
-
Constructor to initialize values.
- periodicRecorder - Variable in class io.perl.api.PerformanceRecorder
- PeriodicRecorder - Interface in io.perl.api
-
Recorder that receives individual events and aggregates them into periodic windows and a total aggregation.
- PeriodicWindow - Interface in io.perl.api
-
Interface representing a periodic aggregation window used by recorders to group events between calls to
PeriodicWindow.startWindow(long)andPeriodicWindow.stopWindow(long). - Perl - Interface in io.perl.api
-
Core PerL public interface representing a running performance benchmark instance.
- PerlBuilder - Class in io.perl.api.impl
-
Helper class responsible for constructing configured PerL instances and their supporting components (time implementations, latency windows, and periodic recorders) based on supplied configuration and logger choices.
- PerlBuilder() - Constructor for class io.perl.api.impl.PerlBuilder
- PerlChannel - Interface in io.perl.api
-
A dedicated channel used by a single thread to submit benchmarking events to a PerL instance.
- PerlConfig - Class in io.perl.config
-
Class PerlConfig extending LatencyConfig.
- PerlConfig() - Constructor for class io.perl.config.PerlConfig
- PerlPrinter - Class in io.perl.system
-
Centralized logger used by PerL classes.
- PerlPrinter() - Constructor for class io.perl.system.PerlPrinter
- poll() - Method in class io.perl.api.impl.AtomicQueue
- poll() - Method in class io.perl.api.impl.CQueue
- poll() - Method in class io.perl.api.impl.SyncQueue
- poll() - Method in interface io.perl.api.Queue
-
Return data of type T from queue, or
nullif none is available. - poll(int) - Method in class io.perl.api.impl.ConcurrentLinkedQueueArray
- poll(int) - Method in class io.perl.api.impl.CQueueArray
- poll(int) - Method in interface io.perl.api.QueueArray
-
Poll an element from the queue at the given index, or
nullif none. - pollOnce() - Method in class io.perl.api.impl.AtomicQueue
- pollOnce() - Method in class io.perl.api.impl.CQueue
- print(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.perl.logger.impl.DefaultPrometheusLogger
- print(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.perl.logger.impl.PrintMetrics
- print(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.perl.logger.impl.ResultsLogger
- print(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in interface io.perl.logger.Print
-
Print the periodic performance results.
- print(long, Print, ReportLatencies) - Method in class io.perl.api.LatencyWindow
-
Print the computed window statistics using the supplied logger.
- Print - Interface in io.perl.logger
-
Print is the primary interface used by the PerL framework to emit periodic performance metrics.
- PrintMetrics - Class in io.perl.logger.impl
-
Metric-backed results reporter that publishes values to a Micrometer CompositeMeterRegistry.
- PrintMetrics(String, double[], Time, TimeUnit, CompositeMeterRegistry) - Constructor for class io.perl.logger.impl.PrintMetrics
-
Constructor PrintMetrics initializing all values.
- printTotal(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.perl.logger.impl.ResultsLogger
- printTotal(double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in interface io.perl.logger.PerformanceLogger
-
Print the Periodic performance results.
- PrometheusMetricsServer - Class in io.perl.logger.impl
-
Metrics server wrapper that exposes Micrometer metrics via an HTTP endpoint using an embedded
PrometheusServer. - PrometheusMetricsServer(String, double[], Time, TimeUnit, int, String, Iterable<Tag>) - Constructor for class io.perl.logger.impl.PrometheusMetricsServer
-
Constructor PrometheusMetricsServer initializing all values.
- PrometheusServer - Class in io.perl.logger.impl
-
Lightweight embedded HTTP server that exposes a Prometheus scrape endpoint.
- PrometheusServer(int, String, Iterable<Tag>) - Constructor for class io.perl.logger.impl.PrometheusServer
-
Constructor PrometheusServer initializing values.
Q
- qPerWorker - Variable in class io.perl.config.PerlConfig
-
Number of queues assigned per worker.
- Queue<T> - Interface in io.perl.api
-
A minimal queue abstraction used by PerL to decouple producers and consumers.
- QueueArray<T> - Interface in io.perl.api
-
Represents an array of
Queueinstances.
R
- receive(int) - Method in interface io.perl.api.Channel
-
Receive the benchmarking timestamp.
- record(long, long, int, int) - Method in class io.perl.api.impl.TotalWindowLatencyPeriodicRecorder
- record(long, long, int, int) - Method in interface io.perl.api.PeriodicRecorder
-
Record the Event/record.
- record(long, long, long) - Method in class io.perl.api.LatencyRecorder
-
Record latency for a batch of events.
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.ArrayLatencyRecorder
-
Record the latency.
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
-
Record the latency.
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.MapLatencyRecorder
-
Record the latency.
- recordLatency(long, int, int, long) - Method in class io.perl.api.impl.TotalWindowLatencyRecorder
- recordLatency(long, int, int, long) - Method in interface io.perl.logger.PerformanceLogger
-
Default no-op implementation to record per-event latency.
- recordLatency(long, int, int, long) - Method in interface io.perl.logger.ReportLatency
-
Record the latency for an event or batch.
- records - Variable in class io.perl.api.TimeStamp
-
Number of records/events represented by this timestamp.
- recordsName - Variable in class io.perl.logger.impl.Metrics
-
String recordsName. - recsPsecName - Variable in class io.perl.logger.impl.Metrics
-
String recsPsecName. - registry - Variable in class io.perl.logger.impl.PrintMetrics
-
MeterRegistry registry. - ReportLatencies - Interface in io.perl.api
-
Interface used by latency windows to retrieve percentile values from a backing latency store.
- reportLatency(long, long) - Method in class io.perl.api.impl.ArrayLatencyRecorder
- reportLatency(long, long) - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- reportLatency(long, long) - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- reportLatency(long, long) - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- reportLatency(long, long) - Method in class io.perl.api.impl.MapLatencyRecorder
- reportLatency(long, long) - Method in interface io.perl.api.ReportLatencies
-
Report a single latency value observed a number of times.
- ReportLatency - Interface in io.perl.logger
-
Callback interface used by the PerL framework to report individual latency samples or aggregated latency events.
- reportLatencyRecord(LatencyRecord) - Method in class io.perl.api.impl.ArrayLatencyRecorder
- reportLatencyRecord(LatencyRecord) - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- reportLatencyRecord(LatencyRecord) - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- reportLatencyRecord(LatencyRecord) - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- reportLatencyRecord(LatencyRecord) - Method in class io.perl.api.impl.MapLatencyRecorder
- reportLatencyRecord(LatencyRecord) - Method in interface io.perl.api.ReportLatencies
-
Report an aggregated latency record (bucket summary) to the consumer.
- reset() - Method in class io.perl.api.impl.ElasticWait
-
This method initialize
ElasticWait.idleCountto zero. - reset() - Method in class io.perl.api.LatencyRecord
-
Reset all recording variables to initial state.
- reset(long) - Method in class io.perl.api.impl.ArrayLatencyRecorder
- reset(long) - Method in class io.perl.api.impl.CSVExtendedLatencyRecorder
- reset(long) - Method in class io.perl.api.impl.HdrExtendedLatencyRecorder
- reset(long) - Method in class io.perl.api.impl.LongHashMapLatencyRecorder
- reset(long) - Method in class io.perl.api.impl.MapLatencyRecorder
- reset(long) - Method in class io.perl.api.LatencyPercentiles
-
Reset internal target indexes and counters using the provided total records count.
- reset(long) - Method in class io.perl.api.LatencyWindow
-
Reset the window state and set the start time.
- ResultsLogger - Class in io.perl.logger.impl
-
Base implementation for printing benchmark results to different sinks.
- ResultsLogger() - Constructor for class io.perl.logger.impl.ResultsLogger
-
Constructor ResultsLogger takes no arguments but initialize all values with default values.
- ResultsLogger(String, double[], TimeUnit, long, long) - Constructor for class io.perl.logger.impl.ResultsLogger
-
Constructor ResultsLogger initialize all values with given parameters.
- run(long, long) - Method in class io.perl.api.impl.CQueuePerl
-
Run the CQ Perl.
- run(long, long) - Method in class io.perl.api.impl.PerformanceRecorderIdleBusyWait
-
Method run.
- run(long, long) - Method in class io.perl.api.impl.PerformanceRecorderIdleSleep
-
Method run.
- run(long, long) - Method in class io.perl.api.PerformanceRecorder
-
Main loop that consumes channel events and updates periodic recorders.
- run(long, long) - Method in interface io.perl.api.RunBenchmark
-
Start the performance benchmark.
- RUN - Enum constant in enum class io.state.State
-
RUN = 1. - RunBenchmark - Interface in io.perl.api
-
Contract for starting a benchmark run.
S
- send(long, long, int, int) - Method in interface io.perl.api.PerlChannel
-
Send benchmarking data for aggregation.
- sendEndTime(long) - Method in interface io.perl.api.Channel
-
Send an end time indication to consumers.
- setElastic(long) - Method in class io.perl.api.impl.ElasticWait
-
This method sets the
ElasticWait.elasticCountand initializeElasticWait.totalCountto zero. - setMaxLatency(long) - Method in class io.perl.logger.impl.ResultsLogger
- setMinLatency(long) - Method in class io.perl.logger.impl.ResultsLogger
- setPercentiles(double[]) - Method in class io.perl.logger.impl.ResultsLogger
- setPrefix(String) - Method in class io.perl.logger.impl.ResultsLogger
- setTimeUnit(TimeUnit) - Method in class io.perl.logger.impl.ResultsLogger
- slc1Name - Variable in class io.perl.logger.impl.Metrics
-
String slc1Name. - slc2Name - Variable in class io.perl.logger.impl.Metrics
-
String slc2Name. - sleepMS - Variable in class io.perl.config.PerlConfig
-
Sleep interval between loops (in milliseconds), when applicable.
- start() - Method in class io.perl.logger.impl.DefaultPrometheusLogger
-
Starts this server in a new background thread.
- start() - Method in class io.perl.logger.impl.PrometheusMetricsServer
-
Starts this server in a new background thread.
- start() - Method in class io.perl.logger.impl.PrometheusServer
-
Starts this server in a new background thread.
- start(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
- start(long) - Method in interface io.perl.api.TotalPeriodicWindow
-
Start the total aggregation window at the given start time.
- startTime - Variable in class io.perl.api.TimeStamp
-
Event start time (caller-defined time unit).
- startWindow(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
- startWindow(long) - Method in interface io.perl.api.PeriodicWindow
-
Start the Recording window.
- State - Enum Class in io.state
-
enum State { BEGIN, RUN, END}.
- stop() - Method in class io.perl.api.impl.CQueuePerl
-
Stop the CQ Perl.
- stop() - Method in interface io.perl.api.Perl
-
Stop and shutdown the benchmark.
- stop() - Method in class io.perl.logger.impl.DefaultPrometheusLogger
-
calls close method from it's super class and Stops this server by closing the listening socket and disallowing any new exchanges from being processed.
- stop() - Method in class io.perl.logger.impl.PrometheusMetricsServer
-
calls close method from it's super class and Stops this server by closing the listening socket and disallowing any new exchanges from being processed.
- stop() - Method in class io.perl.logger.impl.PrometheusServer
-
Stops this server by closing the listening socket and disallowing any new exchanges from being processed.
- stop(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
- stop(long) - Method in interface io.perl.api.TotalPeriodicWindow
-
Stop the total aggregation window and flush final totals.
- stopWindow(long) - Method in class io.perl.api.impl.TotalLatencyRecordWindow
- stopWindow(long) - Method in interface io.perl.api.PeriodicWindow
-
Stop the Recording window.
- SyncQueue<T> - Class in io.perl.api.impl
- SyncQueue() - Constructor for class io.perl.api.impl.SyncQueue
T
- throwException(Throwable) - Method in interface io.perl.exception.ExceptionHandler
-
Report or propagate an exception occurred inside the PerL runtime.
- time - Variable in class io.perl.api.LatencyWindow
- time - Variable in class io.perl.api.PerformanceRecorder
- Time - Interface in io.time
-
Interface Time.
- TimeStamp - Class in io.perl.api
-
Immutable container representing a benchmarking event timestamp.
- TimeStamp() - Constructor for class io.perl.api.TimeStamp
-
Create an empty TimeStamp with all zeros.
- TimeStamp(long) - Constructor for class io.perl.api.TimeStamp
-
Create an end marker TimeStamp.
- TimeStamp(long, long, int, int) - Constructor for class io.perl.api.TimeStamp
-
Constructor TimeStamp initialize all values.
- TimeUnit - Enum Class in io.time
-
enum TimeUnit { ms { public String toString() {return "MILLISECONDS";} }, mcs { public String toString() {return "MICROSECONDS";} }, ns { public String toString() {return "NANOSECONDS";} } }.
- TOTAL_LATENCY_MAX - Static variable in class io.perl.config.LatencyConfig
-
Safety cap for total latency accumulators to avoid overflow.
- totalBytes - Variable in class io.perl.api.LatencyRecord
-
Cumulative bytes observed during the aggregation period.
- totalBytesMax - Variable in class io.perl.api.LatencyRecorder
-
Maximum allowed total bytes before overflow.
- totalLatency - Variable in class io.perl.api.LatencyRecord
-
Sum of latencies of valid samples; used to compute averages.
- totalLatencyMax - Variable in class io.perl.api.LatencyRecorder
-
Maximum allowed cumulative latency before overflow.
- TotalLatencyRecordWindow - Class in io.perl.api.impl
-
Combines a per-window latency store and a total-window store and provides the PeriodicWindow/TotalPeriodicWindow lifecycle semantics.
- TotalLatencyRecordWindow(LatencyRecordWindow, LatencyRecordWindow, Print, Print) - Constructor for class io.perl.api.impl.TotalLatencyRecordWindow
-
Construct with window and total-window storage and corresponding loggers.
- totalLogger - Variable in class io.perl.api.impl.TotalLatencyRecordWindow
-
Print totalLogger. - totalMaxHashMapSizeMB - Variable in class io.perl.config.LatencyConfig
-
Global maximum memory allowed (in MB) for all HashMaps combined.
- TotalPeriodicWindow - Interface in io.perl.api
-
Interface that extends
PeriodicWindowwith lifecycle methods for a total aggregation window. - totalRecords - Variable in class io.perl.api.LatencyRecord
-
Total number of records observed.
- totalRecordsMax - Variable in class io.perl.api.LatencyRecorder
-
Maximum allowed total records before overflow.
- totalWindow - Variable in class io.perl.api.impl.TotalLatencyRecordWindow
-
LatencyRecordWindow totalWindow. - TotalWindowLatencyPeriodicRecorder - Class in io.perl.api.impl
-
Class TotalWindowLatencyPeriodicRecorder.
- TotalWindowLatencyPeriodicRecorder(LatencyRecordWindow, LatencyRecordWindow, Print, Print, ReportLatency, Time) - Constructor for class io.perl.api.impl.TotalWindowLatencyPeriodicRecorder
-
Constructor TotalWindowLatencyPeriodicRecorder passing values to its super class and initializing
TotalWindowLatencyPeriodicRecorder.timeandTotalWindowLatencyPeriodicRecorder.reportLatency. - TotalWindowLatencyRecorder - Class in io.perl.api.impl
-
Recorder that forwards incoming latency samples to a windowed storage and checks whether the window storage is full to trigger periodic resets.
- TotalWindowLatencyRecorder(LatencyRecordWindow, LatencyRecordWindow, Print, Print) - Constructor for class io.perl.api.impl.TotalWindowLatencyRecorder
-
Construct recorder with per-window and total storage plus loggers.
U
- update(long, long, long, long, long, long, long, long, long) - Method in class io.perl.api.LatencyRecorder
-
Update the recorder counters by adding the provided values.
- update(LatencyRecord) - Method in class io.perl.api.LatencyRecorder
-
Update using another LatencyRecord instance.
- updateElastic(long) - Method in class io.perl.api.impl.ElasticWait
-
This method update the
ElasticWait.elasticCount.
V
- validLatencyRecords - Variable in class io.perl.api.LatencyRecord
-
Number of records counted as valid latency samples.
- valueOf(String) - Static method in enum class io.state.State
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.time.TimeUnit
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.state.State
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.time.TimeUnit
-
Returns an array containing the constants of this enum class, in the order they are declared.
W
- waitAndCheck() - Method in class io.perl.api.impl.ElasticWait
-
Checks if
ElasticWait.idleCountis greater thanElasticWait.elasticCount. - window - Variable in class io.perl.api.impl.TotalLatencyRecordWindow
-
LatencyRecordWindow window. - windowIntervalMS - Variable in class io.perl.api.PerformanceRecorder
- windowLogger - Variable in class io.perl.api.impl.TotalLatencyRecordWindow
-
Print windowLogger. - workers - Variable in class io.perl.config.PerlConfig
-
Number of worker threads to run.
All Classes and Interfaces|All Packages|Constant Field Values