Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Does WRF have any random number component that depends on hardware configuration?

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

thiagods

New member
Dear all,

If I hypothetically ran WRF with the same namelists, same input data, same operational system and same compiler, on two different computers, would I get the same results?

Why do I ask this?

I recently ran two 1-month simulations on the AWS cloud. The only difference between the runs was an updated land-use map. Everything else was the same - the namelists and the meteorological input data.

In order to run the experiments, I've created two clusters with the same software and hardware specifications. However, due to the nature of cloud systems I cannot guarantee they were the exact same computers.

When analyzing the simulation results, I saw some differences. This was definitely expected since I was hoping that changing the land-use maps would cause some impacts on the atmospheric fields.

However, since I might have ran the simulations on slightly different computers, I am thinking that the differences in the results might have been caused by the model running on different hardware.

So, does WRF have any routine that uses random numbers that might be different depending upon hardware configurations?

Cheers,
Thiago.
 
Hi Thiago,

We are aware that in general it cannot be expected to produce identical results when running on two different computers, as there are too many variables in the process that can make a difference. A single digit change anywhere in the non-linear model code will produce different output, and will deviate more as time integrates. Unfortunately, even when you ensure that everything else is the same with the 2 compiles/runs, there isn't really anything that can be done to force bit-for-bit outcomes.

I would suggest attempting the same initial run (before the landuse changes) on what you think should be the same cloud architecture, and see if you are able to get bit-for-bit results to your initial run. If so, then it's highly likely that your experimental run with modified landuse is different because of the landuse.
 
kwerner said:
Hi Thiago,

We are aware that in general it cannot be expected to produce identical results when running on two different computers, as there are too many variables in the process that can make a difference. A single digit change anywhere in the non-linear model code will produce different output, and will deviate more as time integrates. Unfortunately, even when you ensure that everything else is the same with the 2 compiles/runs, there isn't really anything that can be done to force bit-for-bit outcomes.

I would suggest attempting the same initial run (before the landuse changes) on what you think should be the same cloud architecture, and see if you are able to get bit-for-bit results to your initial run. If so, then it's highly likely that your experimental run with modified landuse is different because of the landuse.

Hi Kelly,

Thanks a lot for your comment. So, if I get it right, is it safe to assume that two consecutive WRF runs on the same computer, with the same namelists and input data, would produce identical results?

If that's the case, I will definitely re-run my experiments on the same computer in order to exclude possible differences in the model results due to distinct architectures.

Cheers,
Thiago.
 
Top