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

Update integration test scripts to run on WashU Compute1 cluster #1957

Merged
merged 5 commits into from
Sep 12, 2023

Conversation

yantosca
Copy link
Contributor

Name and Institution (Required)

Name: Bob Yantosca
Institution: Harvard + GCST

Confirm you have reviewed the following documentation

Describe the update

This update adds some fixes into the integration test scripts (for both GEOS-Chem and GCClassic) so that they can run on the WashU Compute1 cluster. Namely:

  • Change permission of the $itRoot/scriptsDir folder from 644 to 755
  • Change permission (recursively) of $runAbsPath run directory from 644 to 755
  • If using the LSF scheduler, do not stop with error if an environment file is not specified (because Compute1 uses containers, there is no need for environment files)
  • Replaced tabs with spaces
  • Updated comments, and added TODO comments

Expected changes

This will be a zero-diff update w/r/t benchmark simulations. It only affects the integration test scripts.

Reference(s)

N/A

Related Github Issue(s)

Builds upon the following PRs:

yidant and others added 4 commits August 10, 2023 14:04
test/integration/GCClassic/integrationTest.sh
- Updated error check for LSF

test/integration/GCClassic/integrationTestCompile.sh
- Fixed typo

test/integration/GCClassic/integrationTestCreate.sh
- Modifed permission to make all scripts executable

test/integration/GCClassic/integrationTestExecute.sh
- Modifed permission to make all scripts executable

Signed-off-by: Yidan Tang <t.yidan@wustl.edu>
test/integration/GCClassic/integrationTestCompile.sh
- The "head_gc" variable now looks for the head commit in path
  "${codeDir}/src/GEOS-Chem" (was "${codeDir} before).

CHANGELOG.md
- Updated accordingly

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This brings the bugfix/update-int-test up to date with the latest
updates from the GEOS-Chem 14.2.1 development branch.  This is in
preparation of merging the integration tests updates in this branch
back into dev/14.2.1.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
test/integration/GCClassic/integrationTest.sh
- Added TODO comment
- Changed permission from chmod 644 -> 755
- Replaced tabs with spaces

test/integration/GCClassic/integrationTestCompile.sh
test/integration/GCClassic/integrationTestCreate.sh
- Changed permission to chmod 644 -> 755

test/integration/integrationTestExecute.sh
- Added an if block so that we only make the runAbsPath folder
  executable if the scheduler is LSF (for Compute1)
- Added a TODO comment that we should test on the site name rather
  than the scheduler.

test/integration/GCHP/integrationTest.sh
- Now only raise error for missing env file when scheduler == SLURM
  (as was previously done in GCClassic)
- Added TODO commit
- Replaced tabs with spaces

test/integration/GCHP/integrationTestCreate.sh
- Change the permission of the scriptsDir to chmod 755, which
  is necessary for WashU Compute1

test/integration/GCHP/integrationTestExecute.sh
- Replaced tabs with spaces
- Change permission of $runAbsPath to chmod 755 for WashU compute1
- Added comments and TODO comments for future development

CHANGELOG.md
- Updated accordingly

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
@yantosca yantosca added topic: Benchmarking and Testing Related to CI, integration tests, or scientific benchmarking no-diff-to-benchmark This update will not change the results of fullchem benchmark simulations category: Bug Fix Fixes a previously-reported bug labels Sep 12, 2023
@yantosca yantosca self-assigned this Sep 12, 2023
yantosca added a commit that referenced this pull request Sep 12, 2023
CHANGELOG.md
- Add note under "Fixed" that we now prevent creation of 0.25 x 0.3125
  GCClassic rundirs w/ MERRA-2 met

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
@yantosca
Copy link
Contributor Author

Integration tests are now running

test/integration/GCClassic/integrationTest.sh
- Updated the sed_ie command that removes the #BSUB statements.
  This was corrupted in commit bdcd90b when removing tab characters.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
@yantosca
Copy link
Contributor Author

Integration tests are now running.

@yantosca
Copy link
Contributor Author

All GEOS-Chem Classic integration tests passed (except for TOMAS, which is a known issue):

==============================================================================
GEOS-Chem Classic: Execution Test Results

GCClassic #c6ba251 GEOS-Chem submod update: Merge PR #1951 and PR #1917
GEOS-Chem #34bbd82b8 Merge PR #1957 (Update integration tests for WashU cluster)
HEMCO     #daf54d0 Merge PR #235 (Bug fix for vertical regridding)

Using 24 OpenMP threads
Number of execution tests: 26

Submitted as SLURM job: 1852374
==============================================================================
 
Execution tests:
------------------------------------------------------------------------------
gc_05x0625_NA_47L_merra2_CH4........................Execute Simulation....PASS
gc_05x0625_NA_47L_merra2_fullchem...................Execute Simulation....PASS
gc_4x5_47L_merra2_fullchem..........................Execute Simulation....PASS
gc_4x5_47L_merra2_fullchem_TOMAS15..................Execute Simulation....FAIL
gc_4x5_47L_merra2_fullchem_TOMAS40..................Execute Simulation....FAIL
gc_4x5_merra2_aerosol...............................Execute Simulation....PASS
gc_4x5_merra2_carbon................................Execute Simulation....PASS
gc_4x5_merra2_CH4...................................Execute Simulation....PASS
gc_4x5_merra2_CO2...................................Execute Simulation....PASS
gc_4x5_merra2_fullchem..............................Execute Simulation....PASS
gc_4x5_merra2_fullchem_aciduptake...................Execute Simulation....PASS
gc_4x5_merra2_fullchem_APM..........................Execute Simulation....PASS
gc_4x5_merra2_fullchem_benchmark....................Execute Simulation....PASS
gc_4x5_merra2_fullchem_complexSOA...................Execute Simulation....PASS
gc_4x5_merra2_fullchem_complexSOA_SVPOA.............Execute Simulation....PASS
gc_4x5_merra2_fullchem_LuoWd........................Execute Simulation....PASS
gc_4x5_merra2_fullchem_marinePOA....................Execute Simulation....PASS
gc_4x5_merra2_fullchem_RRTMG........................Execute Simulation....PASS
gc_4x5_merra2_Hg....................................Execute Simulation....PASS
gc_4x5_merra2_metals................................Execute Simulation....PASS
gc_4x5_merra2_POPs_BaP..............................Execute Simulation....PASS
gc_4x5_merra2_tagCH4................................Execute Simulation....PASS
gc_4x5_merra2_tagCO.................................Execute Simulation....PASS
gc_4x5_merra2_tagO3.................................Execute Simulation....PASS
gc_4x5_merra2_TransportTracers......................Execute Simulation....PASS
gc_4x5_merra2_TransportTracers_LuoWd................Execute Simulation....PASS
 
Summary of test results:
------------------------------------------------------------------------------
Execution tests passed: 24
Execution tests failed: 2
Execution tests not yet completed: 0

Furthermore, all integration tests were zero-diff w/r/t the prior integration test (PR #1917 + PR #1951), except for the usual suspects (APM, TOMAS, RRTMG diagnostics):

Checking gc_05x0625_NA_47L_merra2_CH4
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_05x0625_NA_47L_merra2_fullchem
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_47L_merra2_fullchem
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_47L_merra2_fullchem_TOMAS15
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_47L_merra2_fullchem_TOMAS40
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_aerosol
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_carbon
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_CH4
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_CO2
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_aciduptake
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_APM
   -> 1 difference found in OutputDir
      * GCC_r23/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.SpeciesConc.20190701_0000z.nc4 
        GCC_r24/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.SpeciesConc.20190701_0000z.nc4 
   -> 1 difference found in Restarts
      * GCC_r23/rundirs/gc_4x5_merra2_fullchem_APM/Restarts/GEOSChem.Restart.20190701_0100z.nc4 
        GCC_r24/rundirs/gc_4x5_merra2_fullchem_APM/Restarts/GEOSChem.Restart.20190701_0100z.nc4 

Checking gc_4x5_merra2_fullchem_benchmark
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_complexSOA
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_complexSOA_SVPOA
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_LuoWd
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_marinePOA
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_fullchem_RRTMG
   -> 1 difference found in OutputDir
      * GCC_r23/rundirs/gc_4x5_merra2_fullchem_RRTMG/OutputDir/GEOSChem.RRTMG.20190701_0000z.nc4 
        GCC_r24/rundirs/gc_4x5_merra2_fullchem_RRTMG/OutputDir/GEOSChem.RRTMG.20190701_0000z.nc4 
   -> No differences in Restarts

Checking gc_4x5_merra2_Hg
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_metals
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_POPs_BaP
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_tagCH4
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_tagCO
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_tagO3
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_TransportTracers
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_TransportTracers_LuoWd
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gc_4x5_merra2_tagCO
   -> No differences in OutputDir
   -> No differences in Restarts

@yantosca
Copy link
Contributor Author

All GCHP execution tests passed:

==============================================================================
GCHP: Execution Test Results

GCClassic #632ebd6 GEOS-Chem submod update: Merge PR #1951 and PR #1917
GEOS-Chem #34bbd82b8 Merge PR #1957 (Update integration tests for WashU cluster)
HEMCO     #daf54d0 Merge PR #235 (Bug fix for vertical regridding)

Number of execution tests: 5

Submitted as SLURM job: 1865321
==============================================================================
 
Execution tests:
------------------------------------------------------------------------------
gchp_merra2_fullchem................................Execute Simulation....PASS
gchp_merra2_fullchem_benchmark......................Execute Simulation....PASS
gchp_merra2_fullchem_RRTMG..........................Execute Simulation....PASS
gchp_merra2_tagO3...................................Execute Simulation....PASS
gchp_merra2_TransportTracers........................Execute Simulation....PASS
 
Summary of test results:
------------------------------------------------------------------------------
Execution tests passed: 5
Execution tests failed: 0
Execution tests not yet completed: 0

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Furthermore, all GCHP integration tests were zero-diff w/r/t the prior integration test (PR #1917 and PR #1951):

Checking gchp_merra2_fullchem
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gchp_merra2_fullchem_benchmark
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gchp_merra2_fullchem_RRTMG
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gchp_merra2_tagO3
   -> No differences in OutputDir
   -> No differences in Restarts

Checking gchp_merra2_TransportTracers
   -> No differences in OutputDir
   -> No differences in Restarts

@yantosca yantosca merged commit 34bbd82 into dev/14.2.1 Sep 12, 2023
@yantosca yantosca deleted the bugfix/update-int-test branch September 12, 2023 21:55
@msulprizio msulprizio added this to the 14.2.1 milestone Sep 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Bug Fix Fixes a previously-reported bug no-diff-to-benchmark This update will not change the results of fullchem benchmark simulations topic: Benchmarking and Testing Related to CI, integration tests, or scientific benchmarking
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants