본문 바로가기
멀티코어 프로그래밍/OpenCL

OpenCL 디바이스

by 기리의 개발로그 2022. 4. 21.

OpenCL 디바이스

디바이스(Device)

cl_int clGetDeviceIDs(cl_platform_id platform, cl_device_type_type device_type, cl_uint num_entries, cl_device_id *devices, cl_uint *num_devices) 
  • OpenCL 계산 디바이스의 ID를 가져옴
  • platform
    • clGetPlatformIDs()를 이용해 가져온 플랫폼
  • device_type
    • 사용하고자 하는 OpenCL 계산 디바이스의 종류
    • ex) CL_DEVICE_TYPE_CPU, CL_DEVICE_TYPE_GPU, CL_DEVICE_TYPE_DEFAULT 등
  • num_entries
  • devices
  • num_devices
  • 사용 예
    • cl_device_id devs[3];
    • cl_GetDeviceIDs(plat, CL_DEVICE_TYPE_CPU, 3, devs, NULL);
    • cl_uint num_devices;
    • cl_GetDeviceIDs(plat, CL_DEVICE_TYPE_GPU, 1, NULL, &num_devices);

cl_int clGetDeviceInfo(cl_device_id device, cl_device_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret) 
  • param_name에 해당하는 디바이스의 정보를 얻어 옴
  • device
    • 디바이스 ID
  • param_name
    • 얻어오고자 하는 정보 이름
  • param_value_size
    • param_value가 가리키는 메모리의 크기
  • param_value
    • 디바이스 정보가 저장될 메모리의 포인터\
  • param_value_size_ret
    • 디바이스 정보의 실제 크기
반응형

'멀티코어 프로그래밍 > OpenCL' 카테고리의 다른 글

OpenCL 메모리 오브젝트  (2) 2022.04.25
OpenCL 컨텍스트  (13) 2022.04.22
OpenCL 플랫폼  (10) 2022.04.20
커널, 커맨드큐  (9) 2022.04.19
OpenCL 프로그램  (7) 2022.04.18

댓글