Class SimFramePlanner<C,P extends Record>
java.lang.Object
io.nosqlbench.nb.api.components.core.NBBaseComponentMetrics
io.nosqlbench.nb.api.components.core.NBBaseComponent
io.nosqlbench.scenarios.simframe.planning.SimFramePlanner<C,P>
- Type Parameters:
C- The configuration type for the planner
- All Implemented Interfaces:
NBComponent,NBComponentAdvisors,NBComponentEvents,NBComponentMetrics,NBComponentProps,NBComponentServices,NBComponentTimeline,NBProviderSearch,NBTokenWords,NBLabeledElement,AutoCloseable
- Direct Known Subclasses:
FindmaxPlanner,RatchetPlanner,RCurvePlanner
A frame planner is what decides what next set of parameters to try based on a history
of simulation frames, and whether to proceed with another sim frame.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
NBLabeledElement.BasicLabeledElement -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Cprotected final SimFrameJournal<P> protected final org.apache.logging.log4j.LoggerFields inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
bufferOrphanedMetrics, closed_ns, error, errored_ns, labels, metricsBuffer, parent, started_epoch_ms, started_ns, state, teardown_nsFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponent
EMPTY_COMPONENTFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponentProps
HDRDIGITS, SUMMARYFields inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionanalyze(Activity flywheel, SimFrameCapture capture, PrintWriter stdout, PrintWriter stderr, ContainerActivitiesController controller) abstract voidapplyParams(P params, Activity activity) abstract CgetConfig(NBCommandParams params) abstract Pabstract PnextStep(JournalView<P> journal) Using a stateful history of all control parameters and all results, decide if there is additional search space and return a set of parameters for the next workload simulation frame.Methods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
addAdvisor, addMetricsCloseable, attachChild, beforeDetach, close, create, detachChild, find, findParentService, getAdvisors, getChildren, getComponentOnlyLabels, getComponentProp, getComponentState, getLabels, getNanosSinceStart, getParent, getTokens, nanosof_close, nanosof_error, nanosof_start, nanosof_teardown, onError, onEvent, reportExecutionMetric, setComponentProp, started_epoch_ms, teardown, toStringMethods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponentMetrics
addComponentMetric, addListener, findComponentMetrics, findComponentMetrics, getComponentMetric, getComponentMetrics, removeListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentAdvisors
getAdvisorResultsMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentMetrics
addComponentMetric, findComponentMetrics, findComponentMetrics, findOneComponentMetric, findOneComponentMetric, getComponentMetric, getComponentMetricsMethods inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
description
-
Field Details
-
logger
protected final org.apache.logging.log4j.Logger logger -
config
-
journal
-
-
Constructor Details
-
SimFramePlanner
-
-
Method Details
-
getConfig
-
initJournal
-
initialStep
-
nextStep
Using a stateful history of all control parameters and all results, decide if there is additional search space and return a set of parameters for the next workload simulation frame. If the stopping condition has been met, return null- Parameters:
journal- All parameters and results, organized in enumerated simulation frames- Returns:
- Optionally, a set of paramValues which indicates another simulation frame should be sampled, else null
-
applyParams
-
analyze
public P analyze(Activity flywheel, SimFrameCapture capture, PrintWriter stdout, PrintWriter stderr, ContainerActivitiesController controller)
-