未验证 提交 9bf15fef 编写于 作者: X xiebaiyuan 提交者: GitHub

[OPENCL][BACKEND] Avoid memory copy for MallocImage when host_ptr specified (#4153)

* [OPENCL] if specify addr , do not need to modify. avoid mem copy

* test=develop
上级 1ebbfd97
......@@ -64,10 +64,10 @@ void *TargetWrapperCL::MallocImage<float>(const size_t cl_image2d_width,
void *host_ptr) {
cl::ImageFormat img_format(CL_RGBA, GetCLChannelType(PRECISION(kFloat)));
cl_int status;
cl::Image2D *cl_image =
new cl::Image2D(CLRuntime::Global()->context(),
CL_MEM_READ_WRITE | (host_ptr ? CL_MEM_COPY_HOST_PTR
: CL_MEM_ALLOC_HOST_PTR),
cl::Image2D *cl_image = new cl::Image2D(
CLRuntime::Global()->context(),
(host_ptr ? CL_MEM_READ_ONLY : CL_MEM_READ_WRITE) |
(host_ptr ? CL_MEM_COPY_HOST_PTR : CL_MEM_ALLOC_HOST_PTR),
img_format,
cl_image2d_width,
cl_image2d_height,
......@@ -88,10 +88,10 @@ void *TargetWrapperCL::MallocImage<uint16_t>(const size_t cl_image2d_width,
void *host_ptr) {
cl::ImageFormat img_format(CL_RGBA, GetCLChannelType(PRECISION(kFP16)));
cl_int status;
cl::Image2D *cl_image =
new cl::Image2D(CLRuntime::Global()->context(),
CL_MEM_READ_WRITE | (host_ptr ? CL_MEM_COPY_HOST_PTR
: CL_MEM_ALLOC_HOST_PTR),
cl::Image2D *cl_image = new cl::Image2D(
CLRuntime::Global()->context(),
(host_ptr ? CL_MEM_READ_ONLY : CL_MEM_READ_WRITE) |
(host_ptr ? CL_MEM_COPY_HOST_PTR : CL_MEM_ALLOC_HOST_PTR),
img_format,
cl_image2d_width,
cl_image2d_height,
......@@ -112,10 +112,10 @@ void *TargetWrapperCL::MallocImage<int32_t>(const size_t cl_image2d_width,
void *host_ptr) {
cl::ImageFormat img_format(CL_RGBA, GetCLChannelType(PRECISION(kInt32)));
cl_int status;
cl::Image2D *cl_image =
new cl::Image2D(CLRuntime::Global()->context(),
CL_MEM_READ_WRITE | (host_ptr ? CL_MEM_COPY_HOST_PTR
: CL_MEM_ALLOC_HOST_PTR),
cl::Image2D *cl_image = new cl::Image2D(
CLRuntime::Global()->context(),
(host_ptr ? CL_MEM_READ_ONLY : CL_MEM_READ_WRITE) |
(host_ptr ? CL_MEM_COPY_HOST_PTR : CL_MEM_ALLOC_HOST_PTR),
img_format,
cl_image2d_width,
cl_image2d_height,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册