HEBench
hebench::TestHarness::BenchmarkDescription::Configuration Class Reference

Specifies a benchmark configuration. More...

#include <hebench_benchmark_description.h>

Collaboration diagram for hebench::TestHarness::BenchmarkDescription::Configuration:

Public Member Functions

 Configuration ()
 

Public Attributes

std::uint64_t default_min_test_time_ms
 Default minimum test time in milliseconds. More...
 
std::uint64_t fallback_default_sample_size
 Default sample size to be used if a specific size is not specified in the default_sample_sizes collection. If this is 0, then, the workload default should be used. More...
 
std::string dataset_filename
 File containing data for the benchmark. If empty string, benchmarks that can auto generate the dataset will do so. More...
 
std::vector< std::uint64_t > default_sample_sizes
 Default sample size for each operation parameter. More...
 
std::vector< hebench::APIBridge::WorkloadParamw_params
 Set of arguments for workload parameters. More...
 
bool b_single_path_report
 Defines if the workload report will be created in a single-level directory. More...
 

Detailed Description

Specifies a benchmark configuration.

Parameters are established by priority based on where they are specified first. The priority is:

  1. backend specified
  2. benchmark specific in config file
  3. global config file
  4. workload specification

If any of these is 0, then the next down the list is used. Workload specification must always be greater than 0. Workload specification sizes are always supported. Sample sizes from any other sources are requests and may be satisfied based on actual dataset size.

Definition at line 106 of file hebench_benchmark_description.h.

Constructor & Destructor Documentation

◆ Configuration()

hebench::TestHarness::BenchmarkDescription::Configuration::Configuration ( )
inline

Definition at line 109 of file hebench_benchmark_description.h.

Member Data Documentation

◆ b_single_path_report

bool hebench::TestHarness::BenchmarkDescription::Configuration::b_single_path_report

Defines if the workload report will be created in a single-level directory.

Definition at line 155 of file hebench_benchmark_description.h.

◆ dataset_filename

std::string hebench::TestHarness::BenchmarkDescription::Configuration::dataset_filename

File containing data for the benchmark. If empty string, benchmarks that can auto generate the dataset will do so.

Set to a filename containing the data to be used as input (and, optionally, ground truth output) for the benchmark. The benchmark receiving this configuration will try to load the external data by attempting to match the file contents to a known format.

Some benchmarks do not support external datasets, others require them, yet others support both. See the particular workload definition documentation for information on configuration feature support.

Definition at line 140 of file hebench_benchmark_description.h.

◆ default_min_test_time_ms

std::uint64_t hebench::TestHarness::BenchmarkDescription::Configuration::default_min_test_time_ms

Default minimum test time in milliseconds.

This will be the default time used when backends specify 0 for their minimum test time.

Definition at line 121 of file hebench_benchmark_description.h.

◆ default_sample_sizes

std::vector<std::uint64_t> hebench::TestHarness::BenchmarkDescription::Configuration::default_sample_sizes

Default sample size for each operation parameter.

If the number of elements in this array is less than the number of operation parameters, all missing sizes are expected to be default. On the other hand, If the number of elements is greater, extra values should be ignored.

Definition at line 147 of file hebench_benchmark_description.h.

◆ fallback_default_sample_size

std::uint64_t hebench::TestHarness::BenchmarkDescription::Configuration::fallback_default_sample_size

Default sample size to be used if a specific size is not specified in the default_sample_sizes collection. If this is 0, then, the workload default should be used.

Definition at line 127 of file hebench_benchmark_description.h.

◆ w_params

std::vector<hebench::APIBridge::WorkloadParam> hebench::TestHarness::BenchmarkDescription::Configuration::w_params

Set of arguments for workload parameters.

Definition at line 151 of file hebench_benchmark_description.h.


The documentation for this class was generated from the following file: