Ticket #2669 (closed: wontfix)

Opened 10 years ago

Last modified 5 years ago

Random failures of binary operations on Windows

Reported by: Russell Taylor Owned by: Nick Draper
Priority: critical Milestone: Release 2.4
Component: Mantid Keywords:
Cc: Blocked By:
Blocking: Tester: Alex Buts

Description

It seems this has been around for a while, but only became fully apparent when the unit tests were beefed up.

It appears to happen in release mode (/O1 or /O2) and if openmp is enabled.

It seems preferable to disable optimization of the relevant functions, which usually be a smaller loss than turning off openmp.

Change History

comment:1 Changed 10 years ago by Russell Taylor

  • Status changed from new to accepted

comment:2 Changed 10 years ago by Russell Taylor

(In [10112]) This should get the windows unit tests passing reliably. Visual Studio compiler optimizations are now turned off in parts of BinaryOperation.cpp. Re #2669.

comment:3 Changed 10 years ago by Russell Taylor

  • Owner changed from Russell Taylor to Nick Draper
  • Status changed from accepted to assigned

Nick, I'm sending this over to you just in case you want anyone over there to spend any time trying to figure out exactly what optimization is causing the problem. However, looking at the times taken to run the tests, not optimizing makes no apparent difference anyway.

Note that the error had been around for a while - the code didn't change recently, only the tests which then started picking it up.

The only changes relevant to the fix were in BinaryOperation.cpp. Since I made the change, the windows buildservers have not failed on these tests.

comment:4 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 28 to Iteration 29

comment:5 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 29 to Iteration 30

Accepted and assigned tickets moved at iteration 29 code freeze

comment:6 Changed 9 years ago by Nick Draper

  • Priority changed from blocker to critical

comment:7 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 30 to Iteration 31

moved to it31 at it30 code freeze

comment:8 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 32 to Iteration 33

Moved to iteration 33 at iteration 32 code freeze

comment:9 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.1 to Release 2.2

Moved at end of release 2.1

comment:10 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.2 to Release 2.3

Moved at the end of release 2.2

comment:11 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.3 to Release 2.4

Moved to milestone 2.4

comment:12 Changed 8 years ago by Nick Draper

  • Status changed from assigned to accepted

Not been seen for some time in real life usage, won't fix

comment:13 Changed 8 years ago by Nick Draper

  • Status changed from accepted to verify
  • Resolution set to wontfix

comment:14 Changed 8 years ago by Alex Buts

  • Status changed from verify to verifying
  • Tester set to Alex Buts

comment:15 Changed 8 years ago by Alex Buts

  • Status changed from verifying to closed

Have not seen it either. Has to believe the conclusions

comment:16 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 3516

Note: See TracTickets for help on using tickets.