Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/mpi halo resize #96

Closed
wants to merge 14 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ ecbuild_debug( " NetCDF_FEATURES: [${NetCDF_FEATURES}]" )
find_package( eckit 1.18 COMPONENTS LZ4 REQUIRED )
ecbuild_debug( " eckit_FEATURES : [${eckit_FEATURES}]" )

find_package( atlas 0.29 REQUIRED )
find_package( atlas 0.38.1 REQUIRED )
ecbuild_debug( " atlas_FEATURES: [${atlas_FEATURES}]" )

find_package( atlas-orca REQUIRED )
Expand Down
9 changes: 5 additions & 4 deletions src/orca-jedi/geometry/Geometry.cc
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,12 @@ Geometry::Geometry(const eckit::Configuration & config,
}
}
int64_t halo = params_.sourceMeshHalo.value();
if ( ( (params_.partitioner.value() == "serial") || (comm.size() == 1) )
std::string partitioner_name = params_.partitioner.value();
if ( ( (partitioner_name == "serial") || (comm.size() == 1) )
&& (halo > 0) ) {
halo = 0;
oops::Log::info() << "Warning: forcing halo = 0"
partitioner_name = "serial";
oops::Log::info() << "Warning: forcing halo = 0 and serial partitioner"
<< " as settings imply all processors have all data" << std::endl;
}
auto meshgen_config = grid_.meshgenerator()
Expand All @@ -72,8 +74,7 @@ Geometry::Geometry(const eckit::Configuration & config,
atlas::MeshGenerator meshgen(meshgen_config);
log_status();
auto partitioner_config = grid_.partitioner();
partitioner_config.set("type",
params_.partitioner.value());
partitioner_config.set("type", partitioner_name);
partitioner_ = atlas::grid::Partitioner(partitioner_config);
log_status();
mesh_ = meshgen.generate(grid_, partitioner_);
Expand Down
12 changes: 6 additions & 6 deletions src/tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ ecbuild_add_test( TARGET test_orcamodel_hofx_ssh_parallel_checkerboard
ARGS testinput/hofx_nc_ssh_checkerboard.yaml
COMMAND orcamodel_hofx.x )

# Disabled until halos are available from atlas-orca
#ecbuild_add_test( TARGET test_orcamodel_hofx_ssh_parallel_eorca025
# OMP 1
# MPI 2
# ARGS testinput/hofx_nc_ssh_eorca025.yaml
# COMMAND orcamodel_hofx.x )
# Requires atlas-orca halos > 0 change (https://github.com/ecmwf/atlas-orca/pull/20)
ecbuild_add_test( TARGET test_orcamodel_hofx_ssh_parallel_eorca025
OMP 1
MPI 2
ARGS testinput/hofx_nc_ssh_eorca025.yaml
COMMAND orcamodel_hofx.x )

ecbuild_add_test( TARGET test_orcamodel_hofx_ssh_eorca025
OMP 1
Expand Down
2 changes: 0 additions & 2 deletions src/tests/orca-jedi/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
include_directories( ${PROJECT_SOURCE_DIR}/src )

#target_link_libraries( meara_test_nemo_feedback NetCDF::NetCDF_CXX )

ecbuild_add_test( TARGET test_orcajedi_nemo_io_field_reader.x
SOURCES test_nemo_io_field_reader.cc
LIBS orcamodel )
Expand Down
8 changes: 4 additions & 4 deletions src/tests/testoutput/test_hofx3d_nc_potm.ref
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
Test : State:
Test : State:
Test : Model state valid at time: 2021-06-30T00:00:00Z
Test : 3 variables: sea_water_potential_temperature, depthBelowWaterSurface, sea_water_potential_temperature_background_error
Test : atlas field norms:
Test : sea_water_potential_temperature: 9.73262e-02
Test : sea_water_potential_temperature_background_error: 3.54309e-04
Test : depthBelowWaterSurface: 2.05581e-01
Test : sea_water_potential_temperature_background_error: 3.54323e-04
Test : depth: 2.05589e-01

Test : H(x):
Test : H(x):
Test : Sea Temperature nobs= 6 Min=1.80417e+01, Max=1.81944e+01, RMS=1.81181e+01

Test : End H(x)
10 changes: 5 additions & 5 deletions src/tests/testoutput/test_hofx3d_nc_prof_2vars.ref
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
Test : State:
Test : State:
Test : Model state valid at time: 2021-06-30T00:00:00Z
Test : 5 variables: sea_water_potential_temperature, sea_water_potential_temperature_background_error, depthBelowWaterSurface, salinity, salinity_background_error
Test : atlas field norms:
Test : sea_water_potential_temperature: 9.73262e-02
Test : sea_water_potential_temperature_background_error: 3.54309e-04
Test : depthBelowWaterSurface: 2.05581e-01
Test : sea_water_potential_temperature_background_error: 3.54323e-04
Test : depth: 2.05589e-01
Test : salinity: 1.89413e-01
Test : salinity_background_error: 3.54309e-04
Test : salinity_background_error: 3.54323e-04

Test : H(x):
Test : H(x):
Test : ARGO profiles nobs= 12 Min=1.81028e+01, Max=3.52000e+01, RMS=2.79784e+01

Test : End H(x)
6 changes: 3 additions & 3 deletions src/tests/testoutput/test_hofx3d_nc_sst.ref
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Test : State:
Test : State:
Test : Model state valid at time: 2021-06-30T00:00:00Z
Test : 2 variables: sea_surface_temperature, sea_surface_temperature_background_error
Test : atlas field norms:
Test : sea_surface_temperature: 1.37607e-01
Test : sea_surface_temperature_background_error: 6.13682e-04
Test : sea_surface_temperature_background_error: 6.13705e-04

Test : H(x):
Test : H(x):
Test : Sea Surface Temperature nobs= 7 Min=17.6445, Max=18.4389, RMS=18.0723

Test : End H(x)
Expand Down
10 changes: 5 additions & 5 deletions src/tests/testoutput/test_hofx_nc_ice.ref
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
Test : Initial state:
Test : Initial state:
Test : Model state valid at time: 2021-06-28T23:00:00Z
Test : 2 variables: ice_area_fraction, ice_area_fraction_background_error
Test : atlas field norms:
Test : ice_area_fraction: 0.00000e+00
Test : ice_area_fraction_background_error: 3.06841e-03
Test : ice_area_fraction_background_error: 3.06852e-03

Test : Final state:
Test : Final state:
Test : Model state valid at time: 2021-06-30T23:00:00Z
Test : 2 variables: ice_area_fraction, ice_area_fraction_background_error
Test : atlas field norms:
Test : ice_area_fraction: 3.16981e-03
Test : ice_area_fraction_background_error: 3.06841e-03
Test : ice_area_fraction_background_error: 3.06852e-03

Test : H(x):
Test : H(x):
Test : Sea Ice nobs= 7 Min=0.00000e+00, Max=5.41667e-01, RMS=2.04731e-01'

Test : End H(x)
8 changes: 4 additions & 4 deletions src/tests/testoutput/test_hofx_nc_sst.ref
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
Test : Initial state:
Test : Initial state:
Test : Model state valid at time: 2021-06-28T23:00:00Z
Test : 2 variables: sea_surface_temperature, sea_surface_temperature_background_error
Test : atlas field norms:
Test : sea_surface_temperature: 1.37673e-01
Test : sea_surface_temperature_background_error: 6.13682e-04
Test : sea_surface_temperature_background_error: 6.13705e-04

Test : Final state:
Test : Final state:
Test : Model state valid at time: 2021-06-30T23:00:00Z
Test : 2 variables: sea_surface_temperature, sea_surface_temperature_background_error
Test : atlas field norms:
Test : sea_surface_temperature: 1.37683e-01
Test : sea_surface_temperature_background_error: 6.13682e-04
Test : sea_surface_temperature_background_error: 6.13705e-04

Test : H(x):
Test : Sea Surface Temperature nobs= 7 Min=1.76544e+01, Max=1.84389e+01, RMS=1.80765e+01
Expand Down
6 changes: 3 additions & 3 deletions src/tests/testoutput/test_ostia_seaice_obs_hofx3d.ref
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Test : State:
Test : State:
Test : Model state valid at time: 2021-06-30T00:00:00Z
Test : 2 variables: ice_area_fraction, ice_area_fraction_background_error
Test : atlas field norms:
Test : ice_area_fraction: 3.20183e-03
Test : ice_area_fraction_background_error: 3.06841e-03
Test : ice_area_fraction_background_error: 3.06852e-03

Test : H(x):
Test : H(x):
Test : Sea Ice nobs= 4 Min=0, Max=0, RMS=0

Test : End H(x)
Loading