Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
New Contributor I
17 Views

OpenMP atomic capture arguably broken

Yes, I know the OpenMP 3 standard does not specify what, if anything, atomic does and OpenMP 4 says to follow C++ (which is almost equally ambiguous), but the Intel compilers seem to take the sensible line of delivering sequential consistency for explicit atomic sections.  The following program shows a case where that fails.  Look at lines 244-246 in the output, which are:

Validating capture in OpenMP using volatile and y = x; x += v with atomic
 
There were at least 749115 breaches of sequential consistency (NOT expected)

It should be easy enough to find the code that causes the problem - sorry about not stripping down, but I am tied up with other work!

0 Kudos
3 Replies
Highlighted
17 Views

Hello, is this for C++ Compiler 14.0 Beta?

0 Kudos
Highlighted
New Contributor I
17 Views

Yes.  And 13...183.  Sorry for not saying.

0 Kudos
Highlighted
17 Views

confirming a bug. 

thanks for a reproducer. it was sent to appropriate people.
--Vladimir

0 Kudos