Results 1 to 2 of 2

Thread: Running a large number of 1D kernels

  1. #1
    Newbie
    Join Date
    Aug 2014
    Posts
    2

    Running a large number of 1D kernels

    Hi.
    clGetDeviceInfo call with parameter CL_DEVICE_MAX_WORK_ITEM_SIZES returns:
    1024 * 1024 * 1024 on the CPU;
    256 * 256 * 256 on the Radeon;
    1024 * 1024 * 64 on the GeForce;

    Can I run more than 1024 1D-kernels as follows?
    Code :
    size_t global[] = { 1000000 };
    clEnqueueNDRangeKernel ( cmd, kernel, 1, NULL, global, NULL, 0, NULL, NULL );

    And... how to calculate the limit of 1D-kernels?
    Just multiply the available dimension?
    1024*1024*1024 = 1 073 741 824
    256*256*256 = 16 777 216
    1024*1024*64 = 67 108 864
    Is that correct?

  2. #2
    CL_DEVICE_MAX_WORK_ITEM_SIZES refers to the number of work-items in work-groups, not the number of work-items of the complete NDRange. The NDRange size limit is the max value of size_t on the device.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •