Commit b7ce38e9 authored by Dominik Charousset's avatar Dominik Charousset

maintenance and documentation

{apply_args => call}.hpp, added new function: `call_mv` (calls a function
and moves all arguments), and documented spawn_cl function family
parent 3fe4e542
...@@ -156,7 +156,7 @@ class command_impl : public command { ...@@ -156,7 +156,7 @@ class command_impl : public command {
sizeof(typename T::value_type) * m_number_of_values, sizeof(typename T::value_type) * m_number_of_values,
result.data(), result.data(),
0, 0,
NULL, nullptr,
&read_event); &read_event);
clReleaseEvent(read_event); clReleaseEvent(read_event);
if (err != CL_SUCCESS) { if (err != CL_SUCCESS) {
......
...@@ -146,12 +146,12 @@ void command_dispatcher::initialize() { ...@@ -146,12 +146,12 @@ void command_dispatcher::initialize() {
int pid{0}; int pid{0};
cl_uint num_devices{0}; cl_uint num_devices{0};
cl_device_type dev_type{CL_DEVICE_TYPE_GPU}; cl_device_type dev_type{CL_DEVICE_TYPE_GPU};
err = clGetDeviceIDs(ids[pid], dev_type, 0, NULL, &num_devices); err = clGetDeviceIDs(ids[pid], dev_type, 0, nullptr, &num_devices);
if (err == CL_DEVICE_NOT_FOUND) { if (err == CL_DEVICE_NOT_FOUND) {
CPPA_LOG_TRACE("No gpu devices found. Looking for cpu devices."); CPPA_LOG_TRACE("No gpu devices found. Looking for cpu devices.");
cout << "No gpu devices found. Looking for cpu devices." << endl; cout << "No gpu devices found. Looking for cpu devices." << endl;
dev_type = CL_DEVICE_TYPE_CPU; dev_type = CL_DEVICE_TYPE_CPU;
err = clGetDeviceIDs(ids[pid], dev_type, 0, NULL, &num_devices); err = clGetDeviceIDs(ids[pid], dev_type, 0, nullptr, &num_devices);
} }
if (err != CL_SUCCESS) { if (err != CL_SUCCESS) {
ostringstream oss; ostringstream oss;
...@@ -162,7 +162,7 @@ void command_dispatcher::initialize() { ...@@ -162,7 +162,7 @@ void command_dispatcher::initialize() {
throw runtime_error(oss.str()); throw runtime_error(oss.str());
} }
vector<cl_device_id> devices(num_devices); vector<cl_device_id> devices(num_devices);
err = clGetDeviceIDs(ids[pid], dev_type, num_devices, devices.data(), NULL); err = clGetDeviceIDs(ids[pid], dev_type, num_devices, devices.data(), nullptr);
if (err != CL_SUCCESS) { if (err != CL_SUCCESS) {
ostringstream oss; ostringstream oss;
oss << "clGetDeviceIDs: '" oss << "clGetDeviceIDs: '"
...@@ -173,7 +173,7 @@ void command_dispatcher::initialize() { ...@@ -173,7 +173,7 @@ void command_dispatcher::initialize() {
} }
/* create a context */ /* create a context */
m_context.adopt(clCreateContext(0, 1, devices.data(), NULL, NULL, &err)); m_context.adopt(clCreateContext(0, 1, devices.data(), nullptr, nullptr, &err));
if (err != CL_SUCCESS) { if (err != CL_SUCCESS) {
ostringstream oss; ostringstream oss;
oss << "clCreateContext: '" oss << "clCreateContext: '"
......
...@@ -62,7 +62,7 @@ program program::create(const char* kernel_source) { ...@@ -62,7 +62,7 @@ program program::create(const char* kernel_source) {
} }
// build programm from program object // build programm from program object
err = clBuildProgram(pptr.get(), 0, NULL, NULL, NULL, NULL); err = clBuildProgram(pptr.get(), 0, nullptr, nullptr, nullptr, nullptr);
if (err != CL_SUCCESS) { if (err != CL_SUCCESS) {
device_ptr device_used(cppa::detail::singleton_manager:: device_ptr device_used(cppa::detail::singleton_manager::
get_command_dispatcher()-> get_command_dispatcher()->
...@@ -73,13 +73,13 @@ program program::create(const char* kernel_source) { ...@@ -73,13 +73,13 @@ program program::create(const char* kernel_source) {
CL_PROGRAM_BUILD_STATUS, CL_PROGRAM_BUILD_STATUS,
sizeof(cl_build_status), sizeof(cl_build_status),
&build_status, &build_status,
NULL); nullptr);
size_t ret_val_size; size_t ret_val_size;
err = clGetProgramBuildInfo(pptr.get(), err = clGetProgramBuildInfo(pptr.get(),
device_used.get(), device_used.get(),
CL_PROGRAM_BUILD_LOG, CL_PROGRAM_BUILD_LOG,
0, 0,
NULL, nullptr,
&ret_val_size); &ret_val_size);
std::vector<char> build_log(ret_val_size+1); std::vector<char> build_log(ret_val_size+1);
err = clGetProgramBuildInfo(pptr.get(), err = clGetProgramBuildInfo(pptr.get(),
...@@ -87,7 +87,7 @@ program program::create(const char* kernel_source) { ...@@ -87,7 +87,7 @@ program program::create(const char* kernel_source) {
CL_PROGRAM_BUILD_LOG, CL_PROGRAM_BUILD_LOG,
ret_val_size, ret_val_size,
build_log.data(), build_log.data(),
NULL); nullptr);
build_log[ret_val_size] = '\0'; build_log[ret_val_size] = '\0';
std::ostringstream oss; std::ostringstream oss;
oss << "clBuildProgram: '" oss << "clBuildProgram: '"
...@@ -98,7 +98,7 @@ program program::create(const char* kernel_source) { ...@@ -98,7 +98,7 @@ program program::create(const char* kernel_source) {
throw std::runtime_error(oss.str()); throw std::runtime_error(oss.str());
} }
else { else {
#ifdef CPPA_DEBUG # ifdef CPPA_DEBUG
device_ptr device_used(cppa::detail::singleton_manager:: device_ptr device_used(cppa::detail::singleton_manager::
get_command_dispatcher()-> get_command_dispatcher()->
m_devices.front().dev_id); m_devices.front().dev_id);
...@@ -108,13 +108,13 @@ program program::create(const char* kernel_source) { ...@@ -108,13 +108,13 @@ program program::create(const char* kernel_source) {
CL_PROGRAM_BUILD_STATUS, CL_PROGRAM_BUILD_STATUS,
sizeof(cl_build_status), sizeof(cl_build_status),
&build_status, &build_status,
NULL); nullptr);
size_t ret_val_size; size_t ret_val_size;
err = clGetProgramBuildInfo(pptr.get(), err = clGetProgramBuildInfo(pptr.get(),
device_used.get(), device_used.get(),
CL_PROGRAM_BUILD_LOG, CL_PROGRAM_BUILD_LOG,
0, 0,
NULL, nullptr,
&ret_val_size); &ret_val_size);
std::vector<char> build_log(ret_val_size+1); std::vector<char> build_log(ret_val_size+1);
err = clGetProgramBuildInfo(pptr.get(), err = clGetProgramBuildInfo(pptr.get(),
...@@ -122,10 +122,10 @@ program program::create(const char* kernel_source) { ...@@ -122,10 +122,10 @@ program program::create(const char* kernel_source) {
CL_PROGRAM_BUILD_LOG, CL_PROGRAM_BUILD_LOG,
ret_val_size, ret_val_size,
build_log.data(), build_log.data(),
NULL); nullptr);
build_log[ret_val_size] = '\0'; build_log[ret_val_size] = '\0';
CPPA_LOG_DEBUG("clBuildProgram log: '" << build_log.data()); CPPA_LOG_DEBUG("clBuildProgram log: '" << build_log.data());
#endif # endif
} }
return {cptr, pptr}; return {cptr, pptr};
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment