annotate printGpuInfo/printGpuInfo.cc @ 11:53e22a570937

add gpuInfo opencl example
author Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
date Mon, 11 Feb 2013 20:02:23 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #include <OpenCL/opencl.h>
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include <stdio.h>
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 int main() {
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 cl_int work_item_dim;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 size_t work_item_sizes[3];
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 size_t work_group_size;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 cl_platform_id platform_id;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 cl_uint ret;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 cl_device_id device_id;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 clGetPlatformIDs(1, &platform_id, &ret);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 clGetDeviceIDs(platform_id, CL_DEVICE_TYPE_GPU, 1, &device_id, &ret);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 clGetDeviceInfo(device_id, CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS, sizeof(cl_uint), &work_item_dim, NULL);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 clGetDeviceInfo(device_id, CL_DEVICE_MAX_WORK_ITEM_SIZES, sizeof(work_item_sizes), work_item_sizes, NULL);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 clGetDeviceInfo(device_id, CL_DEVICE_MAX_WORK_GROUP_SIZE, sizeof(size_t), &work_group_size, NULL);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 printf("Max work-item dimensions : %d \n",work_item_dim);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 printf("Max work-item work-item sizes : %ld %ld %ld \n",work_item_sizes[0],work_item_sizes[1],work_item_sizes[2]);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 printf("Max work-group size: %ld \n",work_group_size);
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 return 0;
53e22a570937 add gpuInfo opencl example
Yuhi TOMARI <yuhi@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 }