Class SystematicSparseMatrixBenchmark
java.lang.Object
org.episteme.benchmarks.benchmark.benchmarks.SystematicSparseMatrixBenchmark
- All Implemented Interfaces:
SystematicBenchmark<SparseLinearAlgebraProvider<Real>>, RunnableBenchmark
@AutoService(RunnableBenchmark.class)
public class SystematicSparseMatrixBenchmark
extends Object
implements SystematicBenchmark<SparseLinearAlgebraProvider<Real>>
A benchmark that systematically tests all available SparseLinearAlgebraProviders.
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetId()getName()intvoidrun()The core action to measure.voidsetProvider(SparseLinearAlgebraProvider<Real> provider) Sets the provider instance for a specific benchmark execution.voidsetup()Setup method called once before the benchmark runs.voidteardown()Cleanup method called once after the benchmark completes.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface RunnableBenchmark
getAlgorithmProvider, getAlgorithmProviderInstance, getAlgorithmType, getMetadata, getPrecisionMode, isAvailable, isDryRun, setDryRun, setPrecisionModeMethods inherited from interface SystematicBenchmark
isHighPrecision
-
Constructor Details
-
SystematicSparseMatrixBenchmark
public SystematicSparseMatrixBenchmark()
-
-
Method Details
-
getId
- Specified by:
getIdin interfaceRunnableBenchmark- Returns:
- A unique stable identifier for this benchmark (e.g. "ga-tsp-50")
-
getName
- Specified by:
getNamein interfaceRunnableBenchmark- Returns:
- Unique human-readable name of the benchmark
-
getIdPrefix
- Specified by:
getIdPrefixin interfaceSystematicBenchmark<SparseLinearAlgebraProvider<Real>>- Returns:
- The prefix used for the generated benchmark IDs.
-
getNameBase
- Specified by:
getNameBasein interfaceSystematicBenchmark<SparseLinearAlgebraProvider<Real>>- Returns:
- The base name for the generated benchmark names.
-
getProviderClass
- Specified by:
getProviderClassin interfaceSystematicBenchmark<SparseLinearAlgebraProvider<Real>>- Returns:
- The class of the provider interface to discover.
-
getDescription
- Specified by:
getDescriptionin interfaceRunnableBenchmark- Returns:
- A detailed description of what the benchmark measures
-
getDomain
- Specified by:
getDomainin interfaceRunnableBenchmark- Returns:
- The domain of this benchmark (e.g. "Linear Algebra", "Physics")
-
setup
public void setup()Description copied from interface:RunnableBenchmarkSetup method called once before the benchmark runs. Use this to initialize data structures.- Specified by:
setupin interfaceRunnableBenchmark
-
setProvider
Description copied from interface:SystematicBenchmarkSets the provider instance for a specific benchmark execution.- Specified by:
setProviderin interfaceSystematicBenchmark<SparseLinearAlgebraProvider<Real>>
-
run
public void run()Description copied from interface:RunnableBenchmarkThe core action to measure. This method will be called repeatedly in a loop.- Specified by:
runin interfaceRunnableBenchmark
-
teardown
public void teardown()Description copied from interface:RunnableBenchmarkCleanup method called once after the benchmark completes.- Specified by:
teardownin interfaceRunnableBenchmark
-
getSuggestedIterations
public int getSuggestedIterations()- Specified by:
getSuggestedIterationsin interfaceRunnableBenchmark- Returns:
- Estimated number of iterations required for a stable result
-