core: disabled IPP AVX512 normL1(a, b, mask)

for cv::Mat with type=16UC3 and width < 16
pull/11410/head
Alexander Alekhin 7 years ago
parent 1031dfe4e8
commit 856a07711b
  1. 7
      modules/core/src/norm.cpp

@ -1005,7 +1005,12 @@ static bool ipp_norm(InputArray _src1, InputArray _src2, int normType, InputArra
type == CV_16UC3 ? (ippiMaskNormDiffFuncC3)ippiNormDiff_L2_16u_C3CMR : type == CV_16UC3 ? (ippiMaskNormDiffFuncC3)ippiNormDiff_L2_16u_C3CMR :
type == CV_32FC3 ? (ippiMaskNormDiffFuncC3)ippiNormDiff_L2_32f_C3CMR : type == CV_32FC3 ? (ippiMaskNormDiffFuncC3)ippiNormDiff_L2_32f_C3CMR :
0) : 0; 0) : 0;
if (cv::ipp::getIppTopFeatures() & ippCPUID_AVX2) // IPP_DISABLE_NORM_16UC3_mask_small (#11399) if (cv::ipp::getIppTopFeatures() & (
#if IPP_VERSION_X100 >= 201700
ippCPUID_AVX512F |
#endif
ippCPUID_AVX2)
) // IPP_DISABLE_NORM_16UC3_mask_small (#11399)
{ {
if (normType == NORM_L1 && type == CV_16UC3 && sz.width < 16) if (normType == NORM_L1 && type == CV_16UC3 && sz.width < 16)
return false; return false;

Loading…
Cancel
Save