Index

A B C D E F G I L M N O P R S 
All Classes and Interfaces|All Packages|Constant Field Values

A

abortPendingRegistrations(String) - Method in class io.sbm.api.impl.SbmBenchmark
Fail clients waiting for a coordinated distributed start.
abortPendingRegistrations(String) - Method in class io.sbm.api.impl.SbmGrpcService
Abort clients waiting at the coordinated-start barrier.
AbstractRamLogger - Class in io.sbm.logger.impl
Exporter-neutral base logger for SBM.
AbstractRamLogger() - Constructor for class io.sbm.logger.impl.AbstractRamLogger
Creates an SBM logger with empty connection counters.
addArgs(InputOptions) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
addArgs(InputOptions) - Method in class io.sbm.logger.impl.SbmWebLogger
 
addLatenciesRecord(MessageLatenciesRecord) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
adds latencies record.
appendConnections(StringBuilder, int, int) - Method in class io.sbm.logger.impl.AbstractRamLogger
Append connection summary to the output builder.
awaitCoordinatedStart(long, TimeUnit) - Method in class io.sbm.api.impl.SbmBenchmark
Wait for the distributed coordinated-start barrier.
awaitCoordinatedStart(long, TimeUnit) - Method in class io.sbm.api.impl.SbmGrpcService
Wait for all coordinated clients to register or for startup to fail.

B

BASE_CLIENT_ID_VALUE - Static variable in interface io.sbm.api.SbmRegistry
First identifier assigned to an SBM client.
buildBenchmark(String[], String, String) - Static method in class io.sbm.api.impl.Sbm
Build the Benchmark Object.

C

close(ParsedOptions) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
Stops the Prometheus HTTP server and closes the logger.
close(ParsedOptions) - Method in class io.sbm.logger.impl.SbmWebLogger
 
closeClient(ClientID, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
 
completeSuccessfully(long, long) - Method in class io.sbm.api.impl.SbmBenchmark
Completes an orchestrated SBM run after every remote benchmark exits successfully.
CountConnections - Interface in io.sbm.logger
Interface CountConnections.
createPrometheusServer(String, Action, Time) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
Creates the Prometheus server for this logger.

D

decrementConnections() - Method in interface io.sbm.logger.CountConnections
Decrement.
decrementConnections() - Method in class io.sbm.logger.impl.AbstractRamLogger
Decrement current connection counter.
decrementConnections() - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
decrementConnections() - Method in class io.sbm.logger.impl.SbmPrometheusServer
 
defaultAction - Variable in class io.sbm.config.SbmConfig
Default benchmark action selector.
DESC - Static variable in class io.sbm.config.SbmConfig
String DESC = "Storage Benchmark Monitorr".

E

enQueue(MessageLatenciesRecord) - Method in class io.sbm.api.impl.SbmLatencyBenchmark
Enqueue a latency record into a sharded queue based on client ID.
enQueue(MessageLatenciesRecord) - Method in interface io.sbm.api.SbmRegistry
Queue the records.
exactLatencyMaxMemoryMB - Variable in class io.sbm.config.SbmConfig
Retained-memory target for exact periodic nanosecond pages, in MiB.
exactLatencyPageBits - Variable in class io.sbm.config.SbmConfig
Log2 of the exact nanosecond latency values stored in one hybrid page.
exactLatencySparsePageEntries - Variable in class io.sbm.config.SbmConfig
Exact values retained sparsely in a page before dense counter promotion.
exactTotalLatencyMaxMemoryMB - Variable in class io.sbm.config.SbmConfig
Retained-memory target for the exact total nanosecond window, in MiB.

F

flush(long) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
Method flush.

G

get() - Static method in class io.sbm.config.SbmConfig
Returns the validated bundled SBM configuration.
getClasses(String) - Method in class io.sbm.api.RamLoggerPackage
 
getClientFailures() - Method in class io.sbm.api.impl.SbmGrpcService
Returns a stable snapshot of terminal client failures received by SBM.
getConfig(Empty, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
 
getID() - Method in class io.sbm.api.impl.SbmLatencyBenchmark
Allocate a unique client ID for a new connection.
getID() - Method in interface io.sbm.api.SbmRegistry
this method returns id.
getIdleSleepMilliSeconds() - Method in interface io.sbm.params.RamParameters
get duration idle sleep in Milliseconds.
getIdleTimeoutSeconds() - Method in interface io.sbm.params.RamParameters
Get the maximum interval without an SBK performance batch.
getMaxConnections() - Method in interface io.sbm.params.RamParameters
get Max Connections.
getMaximumRegisteredClients() - Method in class io.sbm.api.impl.SbmBenchmark
Return the maximum number of remote SBK clients registered with SBM.
getMaximumRegisteredClients() - Method in class io.sbm.api.impl.SbmGrpcService
Return the largest number of clients registered concurrently.
getMetricsConfig() - Method in class io.sbm.logger.impl.SbmPrometheusLogger
Returns the parsed metrics configuration for GEM argument forwarding.
getMetricsConfigStream() - Method in class io.sbm.logger.impl.SbmPrometheusLogger
Opens the bundled SBM metrics configuration.
getPort() - Method in interface io.sbm.params.RamParameters
Get the Port number to user.
getRegistrationFailure() - Method in class io.sbm.api.impl.SbmBenchmark
Return the coordinated-start failure reported by the controller.
getRegistrationFailure() - Method in class io.sbm.api.impl.SbmGrpcService
Return a coordinated-start failure, if one was recorded.
getStorageName() - Method in interface io.sbm.params.RamParameters
Get Storage Name.
getTimeStamp(long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
getTimeStamp(long) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
getTimeStamp(long) - Method in class io.sbm.logger.impl.SbmWebLogger
 
getVersion(Empty, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
 
getWebConsoleOptionsArgs() - Method in class io.sbm.logger.impl.SbmWebLogger
Returns Local Web Console option names for GEM argument segregation.
getWebConsoleParsedArgs() - Method in class io.sbm.logger.impl.SbmWebLogger
Returns parsed Local Web Console arguments for forwarding to local SBM.
getWebConsoleSource() - Method in class io.sbm.logger.impl.SbmWebLogger
Returns the application label included in Local Web Console run metadata.

I

idleMS - Variable in class io.sbm.config.SbmConfig
int idleMS.
idleTimeoutSeconds - Variable in class io.sbm.config.SbmConfig
Maximum interval without an SBK performance batch, in seconds.
incrementConnections() - Method in interface io.sbm.logger.CountConnections
Increment.
incrementConnections() - Method in class io.sbm.logger.impl.AbstractRamLogger
Increment current and maximum connection counters.
incrementConnections() - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
incrementConnections() - Method in class io.sbm.logger.impl.SbmPrometheusServer
 
io.sbm.api - package io.sbm.api
 
io.sbm.api.impl - package io.sbm.api.impl
 
io.sbm.config - package io.sbm.config
 
io.sbm.logger - package io.sbm.logger
 
io.sbm.logger.impl - package io.sbm.logger.impl
 
io.sbm.main - package io.sbm.main
 
io.sbm.params - package io.sbm.params
 
io.sbm.params.impl - package io.sbm.params.impl
 
isFixedRecordMode() - Method in interface io.sbm.params.RamParameters
Reports whether SBM is aggregating a fixed-record benchmark.
isVersionSupported(Version, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
 

L

load() - Static method in class io.sbm.config.SbmConfig
Loads a new validated SBM configuration from the bundled properties.

M

maxConnections - Variable in class io.sbm.config.SbmConfig
int maxConnections.
maxQueues - Variable in class io.sbm.config.SbmConfig
int maxQueues.
maxRecordSizeMB - Variable in class io.sbm.config.SbmConfig
Maximum inbound SBP latency-record size in MiB.

N

NAME - Static variable in class io.sbm.config.SbmConfig
String NAME = "sbm".

O

open(ParsedOptions, String, Action, Time) - Method in class io.sbm.logger.impl.AbstractRamLogger
Open the logger and initialize connection counters.
open(ParsedOptions, String, Action, Time) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
Opens the logger and starts the Prometheus HTTP server when metrics are enabled.
open(ParsedOptions, String, Action, Time) - Method in class io.sbm.logger.impl.SbmWebLogger
 

P

parseArgs(ParsedOptions) - Method in class io.sbm.logger.impl.AbstractRamLogger
Parse logger arguments and set SBM-specific limits for writer/reader ID dimensions.
parseArgs(ParsedOptions) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
parseArgs(ParsedOptions) - Method in class io.sbm.logger.impl.SbmWebLogger
 
parseArgs(String[]) - Method in class io.sbm.params.impl.SbmParameters
 
port - Variable in class io.sbm.config.SbmConfig
int port.
print(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
print(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
print(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmWebLogger
 
print(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
Prints one SBM reporting window with connection and workload metrics.
print(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
print(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmWebLogger
 
print(long, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
printTotal(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
printTotal(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
printTotal(int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmWebLogger
 
printTotal(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
Prints cumulative SBM results with connection and workload metrics.
printTotal(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmPrometheusLogger
 
printTotal(long, int, int, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.SbmWebLogger
 
printTotal(long, int, int, int, int, long, double, long, double, long, double, long, double, long, long, long, long, long, long, long, double, long, double, double, long, long, double, double, double, long, long, long, long, long, long, long, long[], long[]) - Method in class io.sbm.logger.impl.AbstractRamLogger
 

R

RamLogger - Interface in io.sbm.logger
Interface RamLogger.
RamLoggerPackage - Class in io.sbm.api
Reflection-backed package scanner for RamLogger implementations.
RamLoggerPackage(String) - Constructor for class io.sbm.api.RamLoggerPackage
Creates a scanner for the supplied logger package.
RamParameterOptions - Interface in io.sbm.params
Interface RamParameterOptions.
RamParameters - Interface in io.sbm.params
Interface RamParameters.
record(long, MessageLatenciesRecord) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
Record the latency.
record(long, MessageLatenciesRecord) - Method in interface io.sbm.api.SbmPeriodicRecorder
Record the Event/record.
recordReadRequests(int, long, long, long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
recordReadTimeoutEvents(int, long, long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
recordWriteRequests(int, long, long, long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
recordWriteTimeoutEvents(int, long, long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
registerClient(Config, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
 
releaseCoordinatedStart() - Method in class io.sbm.api.impl.SbmBenchmark
Release prepared remote clients after latency aggregation has started.
releaseCoordinatedStart() - Method in class io.sbm.api.impl.SbmGrpcService
Release every prepared client after the controller has started latency aggregation.
reportClientFailure(ClientFailure, StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
Records and acknowledges a terminal failure reported by an SBK client.
reportLatency(long, long) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
 
reportLatency(long, long) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
reportLatencyRecord(LatencyRecord) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
 
reportLatencyRecord(LatencyRecord) - Method in class io.sbm.logger.impl.AbstractRamLogger
 
run(String[], String, String) - Static method in class io.sbm.api.impl.Sbm
Run the Performance Benchmarking .

S

Sbm - Class in io.sbm.api.impl
Entry points for starting the SBM (Server/BenchMark) service.
Sbm() - Constructor for class io.sbm.api.impl.Sbm
Creates an SBM bootstrap helper.
SBM_LOGGER_PACKAGE_NAME - Static variable in class io.sbm.config.SbmConfig
SBM_LOGGER_PACKAGE_NAME = "io.sbm.logger";.
SbmBenchmark - Class in io.sbm.api.impl
Server-side benchmark that exposes a gRPC endpoint and aggregates latency metrics.
SbmBenchmark(SbmConfig, RamParameterOptions, RamLogger, Time) - Constructor for class io.sbm.api.impl.SbmBenchmark
Create SBK Server Benchmark.
SbmBenchmark(SbmConfig, RamParameterOptions, RamLogger, Time, boolean) - Constructor for class io.sbm.api.impl.SbmBenchmark
Create an SBM benchmark with optional coordinated client release.
SbmConfig - Class in io.sbm.config
Class RamConfig.
SbmConfig() - Constructor for class io.sbm.config.SbmConfig
Creates an empty SBM configuration for property binding.
SbmGrpcService - Class in io.sbm.api.impl
gRPC service implementation for SBM.
SbmGrpcService(RamParameters, Time, long, long, CountConnections, SbmRegistry) - Constructor for class io.sbm.api.impl.SbmGrpcService
Constructor SbkGrpcService initializing all values.
SbmGrpcService(RamParameters, Time, long, long, CountConnections, SbmRegistry, boolean) - Constructor for class io.sbm.api.impl.SbmGrpcService
Create the SBP service with optional registration barrier support.
SbmGrpcService(RamParameters, Time, long, long, CountConnections, SbmRegistry, boolean, long) - Constructor for class io.sbm.api.impl.SbmGrpcService
Create the SBP service with registration-barrier and transport-size configuration.
SbmLatencyBenchmark - Class in io.sbm.api.impl
In-memory aggregator that receives latency records from remote clients and reports metrics.
SbmLatencyBenchmark(int, int, Time, SbmPeriodicRecorder, int, int) - Constructor for class io.sbm.api.impl.SbmLatencyBenchmark
Constructor RamBenchmark initializing all values.
SbmLatencyBenchmark(int, int, Time, SbmPeriodicRecorder, int, int, boolean) - Constructor for class io.sbm.api.impl.SbmLatencyBenchmark
Creates the latency consumer with an optional fixed-record idle deadline.
SbmMain - Class in io.sbm.main
Main class of SBK Server.
SbmMain() - Constructor for class io.sbm.main.SbmMain
Creates an SBM command-line entry point.
SbmParameters - Class in io.sbm.params.impl
Parses SBM server command-line parameters and exposes typed getters.
SbmParameters(String, int, int, int, String[]) - Constructor for class io.sbm.params.impl.SbmParameters
Construct parameter parser and register SBM options.
SbmPeriodicRecorder - Interface in io.sbm.api
Interface for recording latencies.
SbmPrometheusLogger - Class in io.sbm.logger.impl
Concrete SBM logger that prints to stdout and exports metrics via Prometheus.
SbmPrometheusLogger() - Constructor for class io.sbm.logger.impl.SbmPrometheusLogger
Creates a Prometheus logger for aggregated SBM results.
SbmPrometheusServer - Class in io.sbm.logger.impl
Class RamMetricsPrometheusServer.
SbmPrometheusServer(String, String, String, double[], Time, MetricsConfig) - Constructor for class io.sbm.logger.impl.SbmPrometheusServer
Constructor RamMetricsPrometheusServer initializing SbmPrometheusServer.connections and SbmPrometheusServer.maxConnections and calling its super class.
SbmRegistry - Interface in io.sbm.api
Interface RamRegistry.
SbmTotalWindowLatencyPeriodicRecorder - Class in io.sbm.api.impl
Class RamTotalWindowLatencyPeriodicRecorder.
SbmTotalWindowLatencyPeriodicRecorder(LatencyRecordWindow, LatencyRecordWindow, Print, Print, ReportLatencies, SetRW, WriteRequestsLogger, ReadRequestsLogger, int) - Constructor for class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
Constructor RamTotalWindowLatencyPeriodicRecorder initialize all values and pass all values to its upper class.
SbmWebLogger - Class in io.sbm.logger.impl
SBM logger that publishes aggregated distributed benchmark summaries to the Local Web Console.
SbmWebLogger() - Constructor for class io.sbm.logger.impl.SbmWebLogger
Creates an SBM web logger without starting the Local Web Console.
start() - Method in class io.sbm.api.impl.SbmBenchmark
Start SBM server benchmark and gRPC service.
start() - Method in class io.sbm.api.impl.SbmLatencyBenchmark
Starts the SBM latency consumer on its dedicated platform thread.
startLatencyAggregation() - Method in class io.sbm.api.impl.SbmBenchmark
Start latency aggregation after an orchestrated client-registration barrier.
stop() - Method in class io.sbm.api.impl.SbmBenchmark
Stop/shutdown SBK Server Benchmark.
stop() - Method in class io.sbm.api.impl.SbmLatencyBenchmark
 
stopWindow(long) - Method in class io.sbm.api.impl.SbmTotalWindowLatencyPeriodicRecorder
print the periodic Latency Results.
streamLatencies(StreamObserver) - Method in class io.sbm.api.impl.SbmGrpcService
Opens a persistent ordered latency stream for an SBK client.
A B C D E F G I L M N O P R S 
All Classes and Interfaces|All Packages|Constant Field Values