Skip to content

Update IPP integration#27354

Merged
asmorkalov merged 4 commits intoopencv:4.xfrom
eplankin:ipp_update22.1
Jun 12, 2025
Merged

Update IPP integration#27354
asmorkalov merged 4 commits intoopencv:4.xfrom
eplankin:ipp_update22.1

Conversation

@eplankin
Copy link
Copy Markdown
Contributor

Please merge together with opencv/opencv_3rdparty#96
Supported IPP version was updated to IPP 2022.1.0 for Linux and Windows. Bugs in norm() function which caused failure of sanity check in performance tests were fixed, IPP calls were enabled.

Previous update: #26463

@asmorkalov asmorkalov self-assigned this May 24, 2025
@asmorkalov asmorkalov added this to the 4.12.0 milestone May 24, 2025
@asmorkalov
Copy link
Copy Markdown
Contributor

I observe strange crash on old host without AVX2 (Sandy Bridge):

Note: Google Test filter = Core_Norm/ElemWiseTest.accuracy/0
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from Core_Norm/ElemWiseTest
[ RUN      ] Core_Norm/ElemWiseTest.accuracy/0, where GetParam() = 16-byte object <B0-E9 F9-56 55-55 00-00 30-D7 F9-56 55-55 00-00>

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff55f3bd6 in icv_y8_ownNorm_Inf_16u_C1MR_P8Y8 () from /home/arina/Projects/opencv-build/lib/libopencv_core.so.412
(gdb) bt
#0  0x00007ffff55f3bd6 in icv_y8_ownNorm_Inf_16u_C1MR_P8Y8 () at /home/arina/Projects/opencv-build/lib/libopencv_core.so.412
#1  0x000000000000000e in ??? ()
#2  0x000000000000000e in ??? ()
#3  0x000000000000001e in ??? ()
#4  0x0000000000000002 in ??? ()
#5  0x00007fffffffd850 in ??? ()
#6  0x00007ffff55e3bc7 in icv_y8_ippiNorm_Inf_16u_C1MR () at /home/arina/Projects/opencv-build/lib/libopencv_core.so.412
#7  0x00000000fffffff0 in ??? ()
#8  0x00007ffff55407f5 in ipp_hal_norm (src=0x5555572c9cdc "", src_step=28, mask=0x55555719608e "", mask_step=14, width=14, height=30, type=2, norm_type=1, result=0x7fffffffc6d0) at /home/arina/Projects/opencv/hal/ipp/src/norm_ipp.cpp:35
#9  0x00007ffff4cf22f7 in cv::norm (_src=..., normType=0, _mask=...) at /home/arina/Projects/opencv/modules/core/src/norm.dispatch.cpp:310

Not sure if it's related to this particular patch. Looking forward.

@asmorkalov
Copy link
Copy Markdown
Contributor

There is no bug in 4.11.0 release. Looking on HAL related changes.

@opencv-alalek
Copy link
Copy Markdown
Contributor

host without AVX2

You could try to run on modern hosts using OPENCV_IPP=SSE42 env variable

@asmorkalov
Copy link
Copy Markdown
Contributor

Hm.. I do not see the issue with and without mentioned env variable on my Ryzen.

@asmorkalov
Copy link
Copy Markdown
Contributor

I tried Sandy Bridge host with current code and ICV IPP from 4.11.0. It works fine. The previous IPP ICV update brought the issue. Also I see stack corruption error time to time. I'll file a bug with all details to track details.

@asmorkalov
Copy link
Copy Markdown
Contributor

@eplankin Friendly reminder.

@asmorkalov
Copy link
Copy Markdown
Contributor

@opencv-alalek I reverted #if related changes. Please go ahead and merge opencv_3rdparty together with the PR.

@opencv-alalek
Copy link
Copy Markdown
Contributor

merge opencv_3rdparty

Merged.

@asmorkalov asmorkalov merged commit 287dad8 into opencv:4.x Jun 12, 2025
28 checks passed
@asmorkalov asmorkalov mentioned this pull request Jul 21, 2025
asmorkalov pushed a commit that referenced this pull request Aug 25, 2025
Update IPP integration (v2022.2.0) #27612

Please merge together with opencv/opencv_3rdparty#102
Supported IPP version was updated to IPP 2022.2.0 for Linux and Windows.

Previous update: #27354
D00E pushed a commit to D00E/opencv that referenced this pull request Sep 19, 2025
Update IPP integration (v2022.2.0) opencv#27612

Please merge together with opencv/opencv_3rdparty#102
Supported IPP version was updated to IPP 2022.2.0 for Linux and Windows.

Previous update: opencv#27354
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants