18 inline namespace _V1 {
19 namespace ext::oneapi::experimental {
22 const sycl::detail::code_location &CodeLoc =
23 sycl::detail::code_location::current()) {
24 if (Queue.
get_device().
has(aspect::ext_oneapi_queue_profiling_tag)) {
27 sycl::detail::HandlerAccess::internalProfilingTagImpl(CGH);
34 if (!Queue.
has_property<sycl::property::queue::enable_profiling>())
37 "Device must either have aspect::ext_oneapi_queue_profiling_tag or the "
38 "queue must have profiling enabled.");
bool has(aspect Aspect) const __SYCL_WARN_IMAGE_ASPECT(Aspect)
Indicates if the SYCL device has the given feature.
Command group handler class.
Encapsulates a single SYCL queue which schedules kernels on a SYCL device.
device get_device() const
event ext_oneapi_submit_barrier(const detail::code_location &CodeLoc=detail::code_location::current())
Prevents any commands submitted afterward to this queue from executing until all commands previously ...
bool has_property() const noexcept
std::enable_if_t< std::is_invocable_r_v< void, T, handler & >, event > submit(T CGF, const detail::code_location &CodeLoc=detail::code_location::current())
Submits a command group function object to the queue, in order to be scheduled for execution on the d...
event submit_profiling_tag(queue &Queue, const sycl::detail::code_location &CodeLoc=sycl::detail::code_location::current())
std::error_code make_error_code(sycl::errc E) noexcept
Constructs an error code using e and sycl_category()