我正在尝试在Android智能手机上进行一些图像处理。当我尝试使用clEnqueueWriteImage读取yuv时,有时需要1毫秒,但有时需要20毫秒。 gray_data
是640x480尺寸的一维uchar数组。我不知道问题出在哪里。你能帮我吗?谢谢。
size_t origin[3] = { 0, 0, 0 };
size_t region[3] = { 640, 480, 1 };
clImageFormat.image_channel_order = CL_R;
clImageFormat.image_channel_data_type = CL_UNORM_INT8;
m_clOrigin = clCreateImage2D(m_pclConfig.context, CL_MEM_READ_WRITE | CL_MEM_ALLOC_HOST_PTR, &clImageFormat, 640, 480, 0, NULL, &ret);
ret = clEnqueueWriteImage(m_pclConfig.queue, m_clOrigin, CL_TRUE, origin, region, 0, 0, (void *)gray_data, 0, NULL, NULL);
最佳答案
在测量时间之前,请确保您正在致电clFinish。