新的cl :: Image2D分配的数量是预期的两倍

时间:2019-07-11 13:26:06

标签: android opencl

我通过分配图片

cl::ImageFormat img_format(CL_RGBA, CL_HALF_FLOAT);
// image_shape[0] = 4096
// image_shape[1] = 576
new cl::Image2D(opencl_runtime_->context(),
                      CL_MEM_READ_WRITE | CL_MEM_ALLOC_HOST_PTR, img_format,
                      image_shape[0], image_shape[1], 0, nullptr, &error);

我希望使用CL_RGBA和CL_HALF_FLOAT每个像素需要8个字节,因此4096 * 576 * 8为18MB。

但是当我通过...查看应用程序使用的内存时

watch -n 0.1 adb shell dumpsys meminfo my_app

我看到分配前后大约有37MB的差异。

有人知道为什么分配是我预期的两倍吗? 在不同的手机和图像形状上都是相同的。

0 个答案:

没有答案