diff --git a/include/ircd/cl.h b/include/ircd/cl.h index 0540e8486..7a429bdf5 100644 --- a/include/ircd/cl.h +++ b/include/ircd/cl.h @@ -29,6 +29,7 @@ namespace ircd::cl extern const info::versions version_api; extern info::versions version_abi; + extern conf::item profile_queue; extern conf::item enable; extern log::log log; diff --git a/ircd/cl.cc b/ircd/cl.cc index cf940f061..c9ae804ae 100644 --- a/ircd/cl.cc +++ b/ircd/cl.cc @@ -87,6 +87,14 @@ ircd::cl::enable { "persist", false }, }; +decltype(ircd::cl::profile_queue) +ircd::cl::profile_queue +{ + { "name", "ircd.cl.profile.queue" }, + { "default", false }, + { "persist", false }, +}; + // // init // @@ -181,7 +189,7 @@ ircd::cl::init::init() // Create a queue for each device. cl_command_queue_properties qprop {0}; - qprop |= CL_QUEUE_PROFILING_ENABLE; + qprop |= (profile_queue? CL_QUEUE_PROFILING_ENABLE: 0); for(size_t i(0); i < platforms; ++i) for(size_t j(0); j < devices[i]; ++j) {