MCPcopy Create free account
hub / github.com/boostorg/compute / enqueue_task

Method enqueue_task

include/boost/compute/command_queue.hpp:1428–1454  ·  view source on GitHub ↗

Enqueues a kernel to execute using a single work-item. \see_opencl_ref{clEnqueueTask}

Source from the content-addressed store, hash-verified

1426 ///
1427 /// \see_opencl_ref{clEnqueueTask}
1428 event enqueue_task(const kernel &kernel, const wait_list &events = wait_list())
1429 {
1430 BOOST_ASSERT(m_queue != 0);
1431 BOOST_ASSERT(kernel.get_context() == this->get_context());
1432
1433 event event_;
1434
1435 // clEnqueueTask() was deprecated in OpenCL 2.0. In that case we
1436 // just forward to the equivalent clEnqueueNDRangeKernel() call.
1437 #ifdef CL_VERSION_2_0
1438 size_t one = 1;
1439 cl_int ret = clEnqueueNDRangeKernel(
1440 m_queue, kernel, 1, 0, &one, &one,
1441 events.size(), events.get_event_ptr(), &event_.get()
1442 );
1443 #else
1444 cl_int ret = clEnqueueTask(
1445 m_queue, kernel, events.size(), events.get_event_ptr(), &event_.get()
1446 );
1447 #endif
1448
1449 if(ret != CL_SUCCESS){
1450 BOOST_THROW_EXCEPTION(opencl_error(ret));
1451 }
1452
1453 return event_;
1454 }
1455
1456 /// Enqueues a function to execute on the host.
1457 event enqueue_native_kernel(void (BOOST_COMPUTE_CL_CALLBACK *user_func)(void *),

Callers 15

BOOST_AUTO_TEST_CASEFunction · 0.80
BOOST_AUTO_TEST_CASEFunction · 0.80
seedMethod · 0.80
generate_stateMethod · 0.80
dereferenceMethod · 0.80
reduceFunction · 0.80
serial_accumulateFunction · 0.80
serial_find_extremaFunction · 0.80
serial_count_ifFunction · 0.80
radix_sort_implFunction · 0.80
serial_reduceFunction · 0.80

Calls 6

get_contextMethod · 0.95
wait_listClass · 0.85
opencl_errorClass · 0.85
get_event_ptrMethod · 0.80
sizeMethod · 0.45
getMethod · 0.45

Tested by 2

BOOST_AUTO_TEST_CASEFunction · 0.64
BOOST_AUTO_TEST_CASEFunction · 0.64