my C code is running on Win 10, self built OpenCV 4.5.3., WITH_OPENCL flag checked.
Using UMat instead of Mat does not result in any performance improvements through "Transparent API" of OpenCL.
From what I have read on https://jeanvitor.com/opencv-opencl-umat-performance/ i expected at least a slight performance improvement when using UMat
instead of Mat
even on my notebooks Intel HD Graphics 520.
executing resize
, cvtColor
, and bilateralFilter
for UMat
and Mat
does not show any difference.
ocl::haveOpenCL
and ocl::useOpenCL
both return true.
queried values for the only Device::TYPE_GPU
device are:
name: Intel(R) HD Graphics 520
extensions: cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_depth_images cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_image2d_from_buffer cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_media_block_io cl_intel_driver_diagnostics cl_intel_device_side_avc_motion_estimation cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_khr_fp64 cl_khr_subgroups cl_khr_il_program cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_intel_motion_estimation cl_intel_advanced_motion_estimation cl_khr_gl_sharing cl_khr_gl_depth_images cl_khr_gl_event cl_khr_gl_msaa_sharing cl_intel_dx9_media_sharing cl_khr_dx9_media_sharing cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_intel_d3d11_nv12_media_sharing cl_intel_simultaneous_sharing
version: OpenCL 2.1 NEO
OpenCLVersion: OpenCL 2.1 NEO
OpenCL_C_Version: OpenCL C 2.0
have also tried that on other machines, no difference in performance.
what am i missing, any ideas or hints?
CodePudding user response:
found out that the issue was caused by the Microsoft Unit Testing Framework for C . in my production code using UMat
is way faster than Mat
.
question answered