Research Article

Optimized Data Transfers Based on the OpenCL Event Management Mechanism

Algorithm 2

cl_int clEnqueueReadBufferToStdioFile(
cl_command_queue cmd, /* command queue */
cl_mem mem,   /* memory buffer to be read */
cl_bool blk,/* blocking function call   */
size_t off,   /* offset */
size_t bsz,   /* buffer size */
FILE* fp,  /* file pointer */
cl_uint nev,/* the number of events in the list */
const cl_event* evl,  /* event list */
cl_event* evt)/* event object of the function call */
cl_int clEnqueueWriteBufferFromStdioFile(
cl_command_queue cmd, /* command queue */
cl_mem mem,   /* memory buffer to be written */
cl_bool blk,/* blocking function call   */
size_t off,   /* offset */
size_t bsz,   /* buffer size */
FILE* fp,  /* file pointer */
cl_uint nev,/* the number of events in the list */
const cl_event* evl, /* event list */
cl_event* evt)/* event object of the function call */