From fad3a6bf1508f360349e4f176802f20859ef4f91 Mon Sep 17 00:00:00 2001 From: Alexander Alekhin Date: Fri, 9 Feb 2018 18:22:08 +0300 Subject: [PATCH] ocl: disable Laplacian5 and sepFilter2D_SinglePass kernels for AMD OpenCL --- modules/imgproc/src/deriv.cpp | 1 + modules/imgproc/src/filter.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/imgproc/src/deriv.cpp b/modules/imgproc/src/deriv.cpp index 8e2a5e6a9b..2a3ce5ae8a 100644 --- a/modules/imgproc/src/deriv.cpp +++ b/modules/imgproc/src/deriv.cpp @@ -558,6 +558,7 @@ static bool ocl_Laplacian5(InputArray _src, OutputArray _dst, ) && (tileSizeX * tileSizeYmin <= wgs) && (LAPLACIAN_LOCAL_MEM(tileSizeX, tileSizeYmin, kernelX.cols, loc_mem_cn * 4) <= lmsz) + && OCL_PERFORMANCE_CHECK(!dev.isAMD()) // TODO FIXIT 2018: Problem with AMDGPU on Linux (2482.3) ) { Size size = _src.size(), wholeSize; diff --git a/modules/imgproc/src/filter.cpp b/modules/imgproc/src/filter.cpp index 1302407a25..5f3ed517a5 100644 --- a/modules/imgproc/src/filter.cpp +++ b/modules/imgproc/src/filter.cpp @@ -4391,7 +4391,7 @@ bool ocl_sepFilter2D( InputArray _src, OutputArray _dst, int ddepth, imgSize.height > optimizedSepFilterLocalHeight + anchor.y && (!(borderType & BORDER_ISOLATED) || _src.offset() == 0) && anchor == Point(kernelX.cols >> 1, kernelY.cols >> 1) && - (d.isIntel() || (d.isAMD() && !d.hostUnifiedMemory())), + OCL_PERFORMANCE_CHECK(d.isIntel()), // TODO FIXIT ocl_sepFilter2D_SinglePass(_src, _dst, kernelX, kernelY, delta, borderType & ~BORDER_ISOLATED, ddepth, bdepth, int_arithm), true)