DikeBenchmarker package
Subpackages
- DikeBenchmarker.benchmarkadaptors package
- DikeBenchmarker.data package
- DikeBenchmarker.dataadaptors package
- Submodules
- DikeBenchmarker.dataadaptors.competition_dataadaptor module
- DikeBenchmarker.dataadaptors.csv_dataadaptor module
- DikeBenchmarker.dataadaptors.dataadaptor module
- DikeBenchmarker.dataadaptors.inmemory_dataadaptor module
- DikeBenchmarker.dataadaptors.merge_dataadaptor module
- DikeBenchmarker.dataadaptors.sqlite_dataadaptor module
- Module contents
- DikeBenchmarker.infrastructureadaptors package
- DikeBenchmarker.performancemodels package
- DikeBenchmarker.resultconsumers package
- DikeBenchmarker.solveradaptors package
- Submodules
- DikeBenchmarker.solveradaptors.abstractexecutable module
AbstractExecutableAbstractExecutable.format_command()AbstractExecutable.from_dict()AbstractExecutable.get_binaries()AbstractExecutable.get_checker()AbstractExecutable.get_format_string()AbstractExecutable.get_ids()AbstractExecutable.parse_result()AbstractExecutable.read_registry()AbstractExecutable.register()AbstractExecutable.registryAbstractExecutable.to_dict()
- DikeBenchmarker.solveradaptors.checkeradaptor module
- DikeBenchmarker.solveradaptors.executionwrapper module
- DikeBenchmarker.solveradaptors.solveradaptor module
- Module contents
Submodules
DikeBenchmarker.benchmarkatoms module
Basic benchmarking job and result representation
- class DikeBenchmarker.benchmarkatoms.AbstractResult(state: Enum, detail: str | None = None)[source]
Bases:
objectMixin providing baseline functionality for result atoms.
- detail: str | None = None
- property get_detail: str | None
Return the detail message of the result atom.
- property has_detail: bool
Return True if the result atom has a detail message.
- property has_error: bool
Return True if the result atom encountered an error (state is ERROR).
- property has_result: bool
Return True if the result atom has a valid, non-error result.
- property is_empty: bool
Return True if the result atom has no data (state is NONE).
- state: Enum
- class DikeBenchmarker.benchmarkatoms.CheckerResult(state: State = State.NONE, detail: str | None = None)[source]
Bases:
AbstractResultVerdict reported by a proof/model checker.
- class DikeBenchmarker.benchmarkatoms.ExecutionResult(state: State = State.NONE, detail: str | None = None)[source]
Bases:
AbstractResultExecution outcome of one wrapped job.
- class DikeBenchmarker.benchmarkatoms.Job(job_producer: AbstractBenchmarker, benchmark_id: str, solver_id: str, checker_id: str, logroot: str, retries: int = 3)[source]
Bases:
objectBenchmarking Job that behaves like a future.
Identity: benchmark_id, solver_id, created_at (ctor time).
Lifecycle:
- CREATED (initial)
–[put into JobLog]–> SUBMITTED –[start working on]–> RUNNING –[finish working on]–> FINISHED | FAILED
CREATED/SUBMITTED -> CANCELLED
- benchmark_id: str
- cancel_local() bool[source]
Mark the job as cancelled.
Called by the benchmarker to prevent the job from being submitted to the external system.
- checker_id: str
- clone_retry(decrement: int = 1) Job[source]
Create a clone of this job with identical benchmark_id, solver_id, checker_id, and logroot.
The cloned job will have a new created_at timestamp and will be in the CREATED state.
- created_at: datetime
- finished_at: datetime | None
- job_producer: AbstractBenchmarker
- logroot: str
- mark_running() None[source]
Mark the job as running.
Called by the infrastructure adaptor once the job started to run.
- mark_submitted() None[source]
Mark the job as submitted.
Called by the infrastructure adaptor upon receiving the job.
- result: 'Result' | None
- set_failed() None[source]
Mark the job as failed.
Called by the infrastructure adaptor when the job has completed unsuccessfully.
- set_finished() None[source]
Mark the job as finished.
Called by the infrastructure adaptor when the job has completed successfully.
- solver_id: str
- started_at: datetime | None
- submitted_at: datetime | None
- class DikeBenchmarker.benchmarkatoms.JobState(value)[source]
Bases:
EnumPossible states of a Job.
- CANCELLED = 6
- CREATED = 1
- FAILED = 5
- FINISHED = 4
- RUNNING = 3
- SUBMITTED = 2
- exception DikeBenchmarker.benchmarkatoms.JobStateError[source]
Bases:
ExceptionRaised when an invalid state transition is attempted on a Job.
- class DikeBenchmarker.benchmarkatoms.ResourceResult(state: State = State.NONE, detail: str | None = None, cputime: float | None = None, walltime: float | None = None, memory: float | None = None)[source]
Bases:
AbstractResultResource usage and limit outcome of one wrapped execution.
- class State(value)[source]
Bases:
str,EnumPossible resource-limit verdicts a wrapper can report.
- ERROR = 'error'
- MEMOUT = 'memout'
- NONE = 'none'
- SUCCESS = 'success'
- TIMEOUT = 'timeout'
- cputime: float | None = None
- memory: float | None = None
- walltime: float | None = None
- class DikeBenchmarker.benchmarkatoms.Result(job: Job)[source]
Bases:
objectAggregate benchmarking result composed of independent per-dimension atoms.
- property detail: str | None
Join every atom’s detail message, namespaced by atom name.
- property has_error: bool
Return True if any atom reports an error.
- property has_result: bool
Return True if any atom produced a valid, non-error result.
- property is_empty: bool
Return True only if every atom is still empty (nothing has produced data yet).
- class DikeBenchmarker.benchmarkatoms.SolverResult(state: State = State.NONE, detail: str | None = None)[source]
Bases:
AbstractResultSatisfiability verdict reported by a solver.