logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

async_work_group_strided_copy - Performs an async gather of num_elements gentype elements from source to

Authors

TheKhronosGroup

Description

       The OpenCL C programming language implements these functions that provide asynchronous copies between
       global and local memory and a prefetch from global memory.

       Perform an async gather of num_gentypesgentype elements from src to dst. The src_stride is the stride in
       elements for each gentype element read from src. The dst_stride is the stride in elements for each
       gentype element written to dst. The async gather is performed by all work-items in a work-group.

       This built-in function must therefore be encountered by all work-items in a work-group executing the
       kernel with the same argument values; otherwise the results are undefined.

       Returns an event object that can be used by wait_group_events(3clc) to wait for the async copy to finish.
       The event argument can also be used to associate the async_work_group_strided_copy with a previous async
       copy allowing an event to be shared by multiple async copies; otherwise event should be zero.

       If event argument is non-zero, the event object supplied in event argument will be returned.

       This function does not perform any implicit synchronization of source data such as using a barrier(3clc)
       before performing the copy.

       The behavior of async_work_group_strided_copy is undefined if src_stride or dst_stride is 0, or if the
       src_stride or dst_stride values cause the src or dst pointers to exceed the upper bounds of the address
       space during the copy.

Name

       async_work_group_strided_copy - Performs an async gather of num_elements gentype elements from source to
       destination.

       event_tasync_work_group_strided_copy(__localgentype*dst,const__globalgentype*src,size_tnum_gentypes,size_tsrc_stride,event_tevent);event_tasync_work_group_strided_copy(__globalgentype*dst,const__localgentype*src,size_tnum_gentypes,size_tdst_stride,event_tevent);

Notes

        1. OpenCL Specification
           page 276, section 6.12.10 - Async Copies from Global to Local Memory...

The Khronos Group                                  11/18/2024                         ASYNC_WORK_GROUP_STR(3clc)

See Also

asyncCopyFunctions(3clc), wait_group_events(3clc)

Specification

OpenCLSpecification[1]

See Also