Opened 10 years ago

Closed 10 years ago

#316 closed defect (fixed)

Reporting differences between different OS/CPU

Reported by: rwilson Owned by: rwilson
Priority: high Milestone:
Component: Functionality and features Version: 1.0
Severity: normal Keywords:
Cc:

Description

Rajaraman has a small test case that highlights differences in reported data when the test case is run on different OSes (WinXP, Ubuntu) and 32/64 bit versions of the same OS.

Attachments (4)

Re anuga in 64 bit vs 32 bit SECUNCLASSIFIED.txt (4.3 KB) - added by rwilson 10 years ago.
Rajaramans's email
xp_32bit.zip (22.8 KB) - added by rwilson 10 years ago.
Test case code
ubuntu.log (112.4 KB) - added by rwilson 10 years ago.
Log of run on Ubunto
xp.log (114.5 KB) - added by rwilson 10 years ago.
Log of run on WinXP

Download all attachments as: .zip

Change History (7)

Changed 10 years ago by rwilson

Rajaramans's email

Changed 10 years ago by rwilson

Test case code

Changed 10 years ago by rwilson

Log of run on Ubunto

Changed 10 years ago by rwilson

Log of run on WinXP

comment:1 Changed 10 years ago by rwilson

Investigations show that the calculations of truncated timesteps to bring simulation time to a yield time have minor differences on different platforms. This, in conjunction with a boundary stage step function that produces oscillations in stage over time, results in minor phase differences in the stage on different platforms that produces large differences in boundary values at yield report time.

Note that testing shows the differences on two Ubuntu 8.10 with same python versions, etc, except one has Intel Core 2 Duo CPU family/model/stepping of 6/15/13 and the other has 6/15/11?

comment:2 Changed 10 years ago by rwilson

  • Owner changed from Ross Wilson to rwilson
  • Status changed from new to assigned

comment:3 Changed 10 years ago by rwilson

  • Resolution set to fixed
  • Status changed from assigned to closed

The differences between output logs for XP and Ubuntu are there because of slight differences in floating point arithmetic on the two platforms. The method being used to changes timestep size to finish the step on a reporting time was sensitive to these differences. The sensitivity is increased due to the step-like function used on the EAST boundary. Made changes to the code and compared log outputs from two machines that showed a large differences before the change. The logs now agree closely. All tests and validations pass on WinXP and Ubuntu.

Note that the sensitivity was only with the method of determining when to report. The calculation of numerical results for each timestep has not changed.

Fixed for now.

Note: See TracTickets for help on using tickets.