24 #ifndef ARM_COMPUTE_CLTUNING_PARAMS_H 25 #define ARM_COMPUTE_CLTUNING_PARAMS_H 41 CLTuningParams(
unsigned int lws_x = 0,
unsigned int lws_y = 0,
unsigned int lws_z = 0,
int wbsm = 0)
42 : _lws(lws_x, lws_y, lws_z), _wbsm(wbsm)
46 : _lws(lws), _wbsm(wbsm)
77 std::string tuning_params_string =
"";
83 return tuning_params_string;
88 std::replace(tuning_params_string.begin(), tuning_params_string.end(),
';',
' ');
89 std::vector<std::string> array;
90 std::stringstream
ss(tuning_params_string);
94 array.push_back(temp);
104 if(lws_0 == 0 && lws_1 == 0 && lws_2 == 0)
108 _lws = cl::NullRange;
112 _lws = cl::NDRange(lws_0, lws_1, lws_2);
114 array.erase(array.begin(), array.begin() + 3);
122 array.erase(array.begin());
cl::NDRange get_lws() const
bool tune_wbsm
Flag to tune the batches of work groups distributed to compute units.
std::string to_string(T &&value)
Convert integer and float values to string.
std::stringstream ss(mlgo_str)
< OpenCL tuner parameters
Copyright (c) 2017-2021 Arm Limited.
CLTuningParams(cl_int wbsm)
void set_lws(cl::NDRange lws)
CLTuningParams(cl::NDRange lws, cl_int wbsm=0)
CLTuningParams(const CLTuningParams &)=default
void set_wbsm(cl_int wbsm)
int stoi(const std::string &str, std::size_t *pos=0, NumericBase base=NumericBase::BASE_10)
Convert string values to integer.
std::string to_string(CLTuningInfo tuning_info)
Wrapper to configure the Khronos OpenCL C++ header.
CLTuningParams(unsigned int lws_x=0, unsigned int lws_y=0, unsigned int lws_z=0, int wbsm=0)
bool from_string(CLTuningInfo tuning_info, std::string tuning_params_string)