5 #ifndef _HEBench_Harness_MatrixMultiply_O_H_0596d40a3cce4b108a81595c50eb286d
6 #define _HEBench_Harness_MatrixMultiply_O_H_0596d40a3cce4b108a81595c50eb286d
10 #include "hebench/modules/general/include/nocopy.h"
11 #include "hebench/modules/logging/include/logging.h"
18 namespace TestHarness {
45 const std::vector<hebench::APIBridge::WorkloadParam> &w_params)
const override;
52 static bool m_b_registered;
73 const std::uint64_t *param_data_pack_indices,
74 const std::vector<hebench::APIBridge::NativeDataBuffer *> &p_outputs,
80 Benchmark(std::shared_ptr<Engine> p_engine,
Specifies a benchmark configuration.
Base class for workload benchmarks in the offline category.
Token returned by a successful call to IBenchmarkDescriptor::matchBenchmarkDescriptor().
std::shared_ptr< IDataLoader > Ptr
std::shared_ptr< DataLoader > Ptr
void destroyBenchmark(hebench::TestHarness::PartialBenchmark *p_bench) override
Destroys an object returned by createBenchmark().
BenchmarkDescriptor()=default
static constexpr std::uint32_t BenchmarkID
hebench::TestHarness::PartialBenchmark * createBenchmark(std::shared_ptr< Engine > p_engine, const DescriptionToken &description_token) override
Creates the represented IBenchmark object that can perform the workload specified by the HEBench benc...
static constexpr std::uint64_t DefaultBatchSize
bool matchBenchmarkDescriptor(const hebench::APIBridge::BenchmarkDescriptor &bench_desc, const std::vector< hebench::APIBridge::WorkloadParam > &w_params) const override
Determines if the represented benchmark can perform the workload described by a specified HEBench ben...
~BenchmarkDescriptor() override=default
void completeWorkloadDescription(WorkloadDescriptionOutput &output, const Engine &engine, const BenchmarkDescription::Backend &backend_desc, const BenchmarkDescription::Configuration &config) const override
Completes the description for the matched benchmark.
std::uint32_t getEventIDStart() const override
An ID to identify the first event during the benchmark run.
bool validateResult(IDataLoader::Ptr dataset, const std::uint64_t *param_data_pack_indices, const std::vector< hebench::APIBridge::NativeDataBuffer * > &p_outputs, hebench::APIBridge::DataType data_type) const override
Validates the result of an operation against the ground truth.
~Benchmark() override=default
IDataLoader::Ptr getDataset() const override
Dataset to be used for operations previously initialized during creation of this object.
void init() override
Initializes the partial benchmark members.
Bundles values that need to be filled by a workload during completeWorkloadDescription().
Base class for benchmarks.
DataType
Defines data types for a workload.
Defines a benchmark test.