Community
cancel
Showing results for 
Search instead for 
Did you mean: 
nemequ
New Contributor I
265 Views

Incorrect result when breaking up 512-bit vector into 4 128-bit vectors

Jump to solution

I'm trying to implement the _mm512_adds_epu8 function for CPUs which don't support it, and CI picked up a problem with ICC earlier today.  The problem occurs when attempting to call a portable implementation of _mm_adds_epu8 4 times in a loop to emulate the _mm512_adds_epu8 function.  GCC and clang work as expected.

Unfortunately I've had a hard time putting together a reduced test case; when I tried I ended up with an internal compiler error.  AFAICT that reduced test case should work (GCC and clang are fine with it), so I'm attaching it too… maybe it's related.

The original test is gigantic as it includes tons of unrelated code, but it actually compiles.  The result is just incorrect.

This is with icc 19.1 20200117 on (and targeting) Linux x86_64 (Fedora 31).

0 Kudos
1 Solution
Alina_S_Intel
Employee
199 Views

The fix is now available in Intel® Parallel Studio XE 2020 Update 4.



View solution in original post

3 Replies
AbhishekD_Intel
Moderator
265 Views

Hi,

We also experienced the same error while using the ICC compiler with #define USE_128. We have reported this to our concerned team they will get back to you soon.

Thank You

-Abhishek 

Viet_H_Intel
Moderator
265 Views

Thanks, I've reported this case to our Developer.

Alina_S_Intel
Employee
200 Views

The fix is now available in Intel® Parallel Studio XE 2020 Update 4.



View solution in original post

Reply