返回

opencv-cv::cuda::GpuMat::create分配的比请求的多得多

发布时间:2022-07-16 11:44:41 307
# 设备# 工具

我正在使用最新的OpenCV 4。x带CUDA SUOPRT+CUDA 11.6。

我想分配GpuMat这样做可以在设备内存中显示图像:

cv::cuda::GpuMat test1;
test1.create(100, 1000000, CV_8UC1);

我测量了之前消耗的内存create函数调用和之后(使用nvidia-smi工具)。

Before:
|    0   N/A  N/A    372354      C   ...aur/example_build/example      199MiB |
After:
|    0   N/A  N/A    372354      C   ...aur/example_build/example      201MiB |

因此+100 MB-很有意义。

但是当我这样分配图像时(更改了W和H):

cv::cuda::GpuMat test1;
test1.create(1000000, 100, CV_8UC1);
Before:
|    0   N/A  N/A    379124      C   ...aur/example_build/example      199MiB |
After:
|    0   N/A  N/A    379124      C   ...aur/example_build/example      689MiB |

我期望与中相同的增量test1虽然在各种情况下,当图像为“0”时,消耗比预期多5倍;“高而窄”;。我理解错了什么?

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(1)
按点赞数排序
用户头像