diff options
author | Matthias Vogelgesang <matthias.vogelgesang@kit.edu> | 2016-05-25 17:05:54 +0200 |
---|---|---|
committer | Matthias Vogelgesang <matthias.vogelgesang@kit.edu> | 2016-05-25 17:05:54 +0200 |
commit | a40e607b42e47aacffc9db5dc5e81721f0a03fbc (patch) | |
tree | 85c9036068c4c8afe2f670865065032fae5c33b6 /ufo | |
parent | 0371e2e432696305f700e430b5f55c76f5d7d0e8 (diff) |
Query maximum work group size
Diffstat (limited to 'ufo')
-rw-r--r-- | ufo/ufo-gpu-node.c | 9 | ||||
-rw-r--r-- | ufo/ufo-gpu-node.h | 3 |
2 files changed, 11 insertions, 1 deletions
diff --git a/ufo/ufo-gpu-node.c b/ufo/ufo-gpu-node.c index 5e416a7..939e734 100644 --- a/ufo/ufo-gpu-node.c +++ b/ufo/ufo-gpu-node.c @@ -105,6 +105,15 @@ ufo_gpu_node_get_info (UfoGpuNode *node, case UFO_GPU_NODE_INFO_LOCAL_MEM_SIZE: UFO_RESOURCES_CHECK_CLERR (clGetDeviceInfo (priv->device, CL_DEVICE_LOCAL_MEM_SIZE, sizeof (cl_ulong), &ulong_value, NULL)); break; + + case UFO_GPU_NODE_INFO_MAX_WORK_GROUP_SIZE: + { + size_t size; + + UFO_RESOURCES_CHECK_CLERR (clGetDeviceInfo (priv->device, CL_DEVICE_MAX_WORK_GROUP_SIZE, sizeof (size_t), &size, NULL)); + ulong_value = (cl_ulong) size; + } + break; } g_value_set_ulong (value, ulong_value); diff --git a/ufo/ufo-gpu-node.h b/ufo/ufo-gpu-node.h index 1a951d3..0841baf 100644 --- a/ufo/ufo-gpu-node.h +++ b/ufo/ufo-gpu-node.h @@ -74,7 +74,8 @@ struct _UfoGpuNodeClass { typedef enum { UFO_GPU_NODE_INFO_GLOBAL_MEM_SIZE = 0, UFO_GPU_NODE_INFO_MAX_MEM_ALLOC_SIZE, - UFO_GPU_NODE_INFO_LOCAL_MEM_SIZE + UFO_GPU_NODE_INFO_LOCAL_MEM_SIZE, + UFO_GPU_NODE_INFO_MAX_WORK_GROUP_SIZE } UfoGpuNodeInfo; UfoNode *ufo_gpu_node_new (gpointer context, |