5 #ifndef _HEBench_Harness_BenchmarkDescription_H_0596d40a3cce4b108a81595c50eb286d
6 #define _HEBench_Harness_BenchmarkDescription_H_0596d40a3cce4b108a81595c50eb286d
14 #include <unordered_map>
20 namespace TestHarness {
24 namespace BenchmarkDescription {
34 std::size_t m_operation_params_count;
36 Internal m_backend_description;
66 m_backend_description = src.m_backend_description;
73 this->m_backend_description = src.m_backend_description;
80 m_backend_description(),
81 index(m_backend_description.m_index),
82 handle(m_backend_description.m_handle),
83 descriptor(m_backend_description.m_descriptor),
87 std::memset(&m_backend_description, 0,
sizeof(m_backend_description));
151 std::vector<hebench::APIBridge::WorkloadParam>
w_params;
const hebench::APIBridge::BenchmarkDescriptor & descriptor
Benchmark backend descriptor, as retrieved by backend, corresponding to the registration handle h_des...
Backend & operator=(const Backend &src)
std::size_t & operation_params_count
Number of operation parameters for the specified workload.
Backend(const Backend &src)
const hebench::APIBridge::Handle & handle
Handle to the benchmark description as registered by backend.
const std::size_t & index
Index of the benchmark as registered by backend.
Specifies a benchmark configuration.
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 collec...
std::vector< std::uint64_t > default_sample_sizes
Default sample size for each operation parameter.
std::vector< hebench::APIBridge::WorkloadParam > w_params
Set of arguments for workload parameters.
std::string dataset_filename
File containing data for the benchmark. If empty string, benchmarks that can auto generate the datase...
std::uint64_t default_min_test_time_ms
Default minimum test time in milliseconds.
bool b_single_path_report
Defines if the workload report will be created in a single-level directory.
Defines a benchmark test.
Structure to contain flexible data.
std::string other
Other value used to uniquely identify benchmark implementations.
std::string scheme
Human-readable friendly name of the benchmark scheme.
std::string cipher_flags
Human-readable friendly name of the benchmark cipher parameters.
std::int64_t workload
Workload ID as given by hebench::APIBridge::Workload.
std::string workload_name
Human-readable friendly name of the benchmark workload.
std::string path
A string uniquely representing the benchmark descriptor that can be used as a relative directory path...
std::string category
Human-readable friendly name of the benchmark category.
std::string header
CSV formatted header for this benchmark. This will be the header pre-pended to the report containing ...
std::string data_type
Human-readable friendly name of the benchmark input/output data type.
std::string security
Human-readable friendly name of the benchmark security.