提交 ea8aed37 编写于 作者: L liuqi

Fix some typo at buffer_to_image and opecl allocator.

上级 cf7de3b3
...@@ -10,7 +10,7 @@ config_setting( ...@@ -10,7 +10,7 @@ config_setting(
name = "android_armv7", name = "android_armv7",
values = { values = {
"crosstool_top": "//external:android/crosstool", "crosstool_top": "//external:android/crosstool",
"android_cpu": "armeabi-v7a", "cpu": "armeabi-v7a",
}, },
visibility = ["//visibility:public"], visibility = ["//visibility:public"],
) )
...@@ -19,7 +19,7 @@ config_setting( ...@@ -19,7 +19,7 @@ config_setting(
name = "android_arm64", name = "android_arm64",
values = { values = {
"crosstool_top": "//external:android/crosstool", "crosstool_top": "//external:android/crosstool",
"android_cpu": "arm64-v8a", "cpu": "arm64-v8a",
}, },
visibility = ["//visibility:public"], visibility = ["//visibility:public"],
) )
...@@ -70,7 +70,7 @@ void OpenCLAllocator::Delete(void *buffer) { ...@@ -70,7 +70,7 @@ void OpenCLAllocator::Delete(void *buffer) {
void OpenCLAllocator::DeleteImage(void *buffer) { void OpenCLAllocator::DeleteImage(void *buffer) {
if (buffer != nullptr) { if (buffer != nullptr) {
cl::Image3D *cl_image = static_cast<cl::Image3D *>(buffer); cl::Image2D *cl_image = static_cast<cl::Image2D *>(buffer);
delete cl_image; delete cl_image;
} }
} }
......
...@@ -18,8 +18,7 @@ class OpenCLAllocator : public Allocator { ...@@ -18,8 +18,7 @@ class OpenCLAllocator : public Allocator {
void *New(size_t nbytes) override; void *New(size_t nbytes) override;
/* /*
* Only support shape.size() > 1 and collapse first n-2 dimensions to depth. * Use Image2D with RGBA (128-bit) format to represent the image.
* Use Image3D with RGBA (128-bit) format to represent the image.
* *
* @ shape : [depth, ..., height, width ]. * @ shape : [depth, ..., height, width ].
*/ */
......
...@@ -13,7 +13,7 @@ load("//mace:mace.bzl", "if_android_arm64") ...@@ -13,7 +13,7 @@ load("//mace:mace.bzl", "if_android_arm64")
cc_library( cc_library(
name = "kernels", name = "kernels",
srcs = glob(["*.cc"]) + if_android(glob(["opencl/*.cc"])) + if_android_arm64(glob(["neon/*.cc"])), srcs = glob(["*.cc"]) + if_android(glob(["opencl/*.cc"])) + if_android_arm64(glob(["neon/*.cc"])),
hdrs = glob(["*.h"]) + if_android(glob(["opencl/*.cc"])) + if_android_arm64(glob(["neon/*.cc"])), hdrs = glob(["*.h"]) + if_android(glob(["opencl/*.h"])) + if_android_arm64(glob(["neon/*.h"])),
copts = [ copts = [
"-std=c++11", "-std=c++11",
"-fopenmp", "-fopenmp",
......
...@@ -39,13 +39,12 @@ void BufferToImageFunctor<DeviceType::OPENCL, T>::operator()(Tensor *buffer, ...@@ -39,13 +39,12 @@ void BufferToImageFunctor<DeviceType::OPENCL, T>::operator()(Tensor *buffer,
kernel_name = i2b_ ? "arg_image_to_buffer" : "arg_buffer_to_image"; kernel_name = i2b_ ? "arg_image_to_buffer" : "arg_buffer_to_image";
break; break;
} }
VLOG(0) << kernel_name;
auto b2f_kernel = runtime->BuildKernel("buffer_to_image", auto b2f_kernel = runtime->BuildKernel("buffer_to_image",
kernel_name, kernel_name,
built_options); built_options);
uint32_t idx = 0; uint32_t idx = 0;
b2f_kernel.setArg(idx++, *(static_cast<const cl::Image3D *>(buffer->buffer()))); b2f_kernel.setArg(idx++, *(static_cast<const cl::Image2D *>(buffer->buffer())));
if (type == ARGUMENT) { if (type == ARGUMENT) {
b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(0))); b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(0)));
} else { } else {
...@@ -53,7 +52,7 @@ void BufferToImageFunctor<DeviceType::OPENCL, T>::operator()(Tensor *buffer, ...@@ -53,7 +52,7 @@ void BufferToImageFunctor<DeviceType::OPENCL, T>::operator()(Tensor *buffer,
b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(2))); b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(2)));
b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(3))); b2f_kernel.setArg(idx++, static_cast<uint32_t>(buffer->dim(3)));
} }
b2f_kernel.setArg(idx++, *(static_cast<cl::Image3D *>(image->buffer()))); b2f_kernel.setArg(idx++, *(static_cast<cl::Image2D *>(image->buffer())));
const size_t gws[3] = {image_shape[0], const size_t gws[3] = {image_shape[0],
image_shape[1], image_shape[1],
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册