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 copygb, copygb2 testing #242

Closed
Show file tree
Hide file tree
Changes from 23 commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
f5d5acb
Restore interp testing for copygb
AlexanderRichert-NOAA Jul 21, 2023
9162c71
Restore g2c_compare for copygb2 tests; add interp test for copygb2
AlexanderRichert-NOAA Jul 21, 2023
acb8d53
Require ip 4.x because of ip_mod usage
AlexanderRichert-NOAA Jul 21, 2023
3ee7fa8
Move CI to ip v4.1.0
AlexanderRichert-NOAA Jul 21, 2023
00f6915
Update developer.yml to ip 4.1.0
AlexanderRichert-NOAA Jul 21, 2023
bfdb478
update spack.yaml to ip 4.1.0
AlexanderRichert-NOAA Jul 21, 2023
290d5a6
Add explicit G2C_COMPARE cmake option
AlexanderRichert-NOAA Jul 21, 2023
8b4bea6
Use jasper 2.0.32
AlexanderRichert-NOAA Jul 21, 2023
f85be0f
Try comparing idx files for copygb interp tests
AlexanderRichert-NOAA Jul 21, 2023
fbb1499
Update interp (landmask) ref files
AlexanderRichert-NOAA Jul 21, 2023
53d45f4
CI debugging...
AlexanderRichert-NOAA Jul 21, 2023
6cfd755
CI debugging....
AlexanderRichert-NOAA Jul 21, 2023
c5ec574
CI debugging.....
AlexanderRichert-NOAA Jul 21, 2023
2e011aa
CI debugging......
AlexanderRichert-NOAA Jul 21, 2023
375e9fe
Remove w3emc 2.9.3 from Linux_versions.yml
AlexanderRichert-NOAA Jul 21, 2023
56664b2
Get rid of w3emc@2.9.3 in CI
AlexanderRichert-NOAA Jul 21, 2023
44263c8
no bufr for w3emc in MacOS.yml
AlexanderRichert-NOAA Jul 21, 2023
6af0cf8
fiddle with spack versions for illegal instructions issue
AlexanderRichert-NOAA Jul 21, 2023
0362a10
fiddle with spack versions for illegal instructions issue
AlexanderRichert-NOAA Jul 21, 2023
69339ba
Update w3emc version to 2.10.0 in spack CI
AlexanderRichert-NOAA Jul 24, 2023
bd7a153
try previous intel workflow
AlexanderRichert-NOAA Jul 24, 2023
7262b76
re-enable ip 3.3.3 for testing intel ci
AlexanderRichert-NOAA Jul 24, 2023
75cda0f
u
AlexanderRichert-NOAA Jul 24, 2023
c2de399
clear intel caches
AlexanderRichert-NOAA Jul 24, 2023
fd5937b
ip_mod
AlexanderRichert-NOAA Jul 24, 2023
c77a2c5
initialize M1, MM in copygb
AlexanderRichert-NOAA Jul 25, 2023
89252e6
add heap arrays for intel CI
AlexanderRichert-NOAA Jul 25, 2023
407f31f
ci debugging...
AlexanderRichert-NOAA Jul 25, 2023
384c09c
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
7f1dd9d
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
cda0873
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
2e21e28
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
f3a8e99
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
3ae8693
More intel ci debugging
AlexanderRichert-NOAA Jul 25, 2023
c782a1f
Intel.yml
AlexanderRichert-NOAA Jul 25, 2023
3110256
test
AlexanderRichert-NOAA Jul 25, 2023
6c2fef7
u
AlexanderRichert-NOAA Jul 25, 2023
317fcd1
test spack with latest w3emc
AlexanderRichert-NOAA Jul 25, 2023
198e005
cleanup spack.yml (remove mpich)
AlexanderRichert-NOAA Jul 25, 2023
3a1c0da
Use spack external find all
AlexanderRichert-NOAA Jul 25, 2023
3316304
go back to jasper 4
AlexanderRichert-NOAA Jul 25, 2023
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
6 changes: 3 additions & 3 deletions .github/workflows/Linux_external.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
g2-version: [develop, v3.5.x]
bacio-version: [2.5.0]
jasper-version: [2.0.33, 3.0.5, 4.0.0]
w3emc-version: [2.9.3, 2.10.0]
w3emc-version: [2.10.0]

steps:
- name: install-dependencies
Expand Down Expand Up @@ -136,15 +136,15 @@ jobs:
uses: actions/cache@v2
with:
path: ~/ip
key: ip-${{ runner.os }}-3.3.3
key: ip-${{ runner.os }}-4.1.0

- name: checkout-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
repository: NOAA-EMC/NCEPLIBS-ip
path: ip
ref: v3.3.3
ref: v4.1.0

- name: build-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/Linux_versions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
g2-version: [3.4.5, 3.5.x]
bacio-version: [2.4.1, 2.5.0]
jasper-version: [2.0.33]
w3emc-version: [2.9.3, 2.10.0]
w3emc-version: [2.10.0]

steps:
- name: install-dependencies
Expand Down Expand Up @@ -136,15 +136,15 @@ jobs:
uses: actions/cache@v2
with:
path: ~/ip
key: ip-${{ runner.os }}-3.3.3
key: ip-${{ runner.os }}-4.1.0

- name: checkout-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
repository: NOAA-EMC/NCEPLIBS-ip
path: ip
ref: v3.3.3
ref: v4.1.0

- name: build-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/MacOS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,23 +102,23 @@ jobs:
uses: actions/cache@v2
with:
path: ~/w3emc
key: w3emc-MacOS-${{ runner.os }}-2.9.3
key: w3emc-MacOS-${{ runner.os }}-2.10.0

- name: checkout-w3emc
if: steps.cache-w3emc.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
repository: NOAA-EMC/NCEPLIBS-w3emc
path: w3emc
ref: v2.9.3
ref: v2.10.0

- name: build-w3emc
if: steps.cache-w3emc.outputs.cache-hit != 'true'
run: |
cd w3emc
mkdir build
cd build
cmake .. -DCMAKE_PREFIX_PATH=~/bacio -DCMAKE_INSTALL_PREFIX=~/w3emc
cmake .. -DCMAKE_PREFIX_PATH=~/bacio -DCMAKE_INSTALL_PREFIX=~/w3emc -DBUILD_WITH_BUFR=OFF
make -j2
make install

Expand All @@ -127,15 +127,15 @@ jobs:
uses: actions/cache@v2
with:
path: ~/ip
key: ip-MacOS-${{ runner.os }}-3.3.3
key: ip-MacOS-${{ runner.os }}-4.1.0

- name: checkout-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
repository: NOAA-EMC/NCEPLIBS-ip
path: ip
ref: v3.3.3
ref: v4.1.0

- name: build-ip
if: steps.cache-ip.outputs.cache-hit != 'true'
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/developer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,14 @@ jobs:
with:
repository: jasper-software/jasper
path: jasper
ref: version-4.0.0
ref: version-2.0.32

- name: cache-jasper
id: cache-jasper
uses: actions/cache@v2
with:
path: ~/jasper
key: jasper-${{ runner.os }}-4.0.0
key: jasper-${{ runner.os }}-2.0.32

- name: build-jasper
if: steps.cache-jasper.outputs.cache-hit != 'true'
Expand Down Expand Up @@ -116,7 +116,7 @@ jobs:
with:
repository: NOAA-EMC/NCEPLIBS-ip
path: ip
ref: v3.3.3
ref: v4.1.0

- name: build-ip
run: |
Expand Down Expand Up @@ -174,7 +174,7 @@ jobs:
ls -l ~/jasper/lib
export LD_LIBRARY_PATH=/home/runner/jasper/lib
export PATH="~/g2c/bin:$PATH"
cmake -DENABLE_DOCS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH="~/bacio;~/jasper;~/sp;~/ip;~/w3emc;~/g2;~/g2c" -DCMAKE_Fortran_FLAGS="-fprofile-arcs -ftest-coverage -O0 -Wall" -DCMAKE_C_FLAGS="-fprofile-arcs -ftest-coverage -O0 -Wall" ..
cmake -DENABLE_DOCS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH="~/bacio;~/jasper;~/sp;~/ip;~/w3emc;~/g2;~/g2c" -DCMAKE_Fortran_FLAGS="-fprofile-arcs -ftest-coverage -O0 -Wall" -DCMAKE_C_FLAGS="-fprofile-arcs -ftest-coverage -O0 -Wall" -DG2C_COMPARE=ON ..
make -j2 VERBOSE=1
ctest --output-on-failure --rerun-failed --verbose

Expand Down
10 changes: 1 addition & 9 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,22 +40,14 @@ find_package(ZLIB REQUIRED)
find_package(bacio 2.4.0 REQUIRED)
find_package(sp 2.3.3 REQUIRED)
find_package(ip 3.3.3 REQUIRED)
find_package(w3emc 2.9.3 REQUIRED)
find_package(w3emc 2.10.0 REQUIRED)
find_package(g2 3.4.0 REQUIRED)
if (g2_VERSION GREATER_EQUAL 3.5.0)
find_package(g2c 1.7.0 REQUIRED)
else()
find_package(g2c 1.7.0)
endif()

# See if the g2c_compare program is available.
find_program(G2C_COMPARE g2c_compare)
if (G2C_COMPARE)
message(STATUS "g2c_compare found: ${G2C_COMPARE}")
else()
message(STATUS "g2c_compare not found.")
endif()

# The name of the bacio library changed with the 2.5.0 release. The
# "_4" was removed from the library and include directory name in the
# bacio-2.5.0 release. Set a name variable to be used in the rest of
Expand Down
8 changes: 5 additions & 3 deletions ci/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,16 @@ spack:
all:
compiler:
- intel
- gcc@10:10
- gcc@11:11
require:
- one_of: ["build_type=Release", "@:"]
specs:
- bacio@2.5.0
- w3emc@2.9.3
- w3emc@2.10.0
- g2@3.4.5
- g2c@1.7.0
- sp@2.3.3
- ip@3.3.3
- ip@4.1.0
view: true
concretizer:
unify: true
Expand Down
1 change: 1 addition & 0 deletions src/copygb/copygb.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1190,6 +1190,7 @@ END SUBROUTINE INTGRIB
SUBROUTINE INTGRIB1(K1F,KGDS1F,K2F,KGDS2F,MRL,MRO, &
IV,IP,IPOPT,KGDS1,K1,IB1,L1,F1,G1,KGDS2,K2, &
IB2,L2,F2,G2,IRET)
! USE IP_MOD
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's going on here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've been doing a lot of fiddling in investigating CI issues, so this is related to restesting with the older ip version. I'm currently trying to figure why the intel version is segfaulting.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, sorry I didn't notice that this was a draft PR.

INTEGER IPOPT(20)
INTEGER KGDS1(200),KGDS2(200)
LOGICAL*1 L1(K1),L2(K2)
Expand Down
1 change: 1 addition & 0 deletions src/copygb2/copygb2.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1349,6 +1349,7 @@ END SUBROUTINE INTGRIB2
SUBROUTINE INTGRIB1(K1F,KGDS1F,K2F,KGDS2F,MRL,MRO, &
IV,IP,IPOPT,KGDS1,K1,IB1,L1,F1,G1,KGDS2,K2, &
IB2,L2,F2,G2,IRET)
! USE IP_MOD
INTEGER IPOPT(20)
INTEGER KGDS1(200),KGDS2(200)
LOGICAL*1 L1(K1),L2(K2)
Expand Down
9 changes: 6 additions & 3 deletions tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ endfunction()

# Copy necessary test data files.
gu_copy_test_data(ref_gdaswave.t00z.wcoast.0p16.f000.grib2)
gu_copy_test_data(ref_gdaswave.t00z.wcoast.0p16.f000.ip.grib2)
gu_copy_test_data(ref_gdaswave.t00z.wcoast.0p16.f000.grib1)
gu_copy_test_data(ref_gdaswave_2.idx)
gu_copy_test_data(ref_gdaswave.degrib2.txt)
Expand Down Expand Up @@ -92,10 +93,12 @@ gu_test(run_degrib2_tests)
gu_test(run_grbindex_tests)
gu_test(run_grb2index_tests)

# This test depends on the g2c_compare utility, which may not be
# present.
if (G2C_COMPARE)
option(G2C_COMPARE OFF)
if(G2C_COMPARE)
find_program(G2C_COMPARE g2c_compare)
gu_test(run_copygb2_tests)
else()
message(STATUS "g2c_compare not found.")
endif()

# Does the user want to get extra test files from the FTP site, and
Expand Down
Binary file not shown.
8 changes: 7 additions & 1 deletion tests/run_copygb2_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,13 @@ echo "*** Running copygb2 test"
../src/copygb2/copygb2 -x data/ref_gdaswave.t00z.wcoast.0p16.f000.grib2 test_gdaswave_2.grib2

# Are the files the same?
#g2c_compare -v data/ref_gdaswave.t00z.wcoast.0p16.f000.grib2 test_gdaswave_2.grib2
g2c_compare -v data/ref_gdaswave.t00z.wcoast.0p16.f000.grib2 test_gdaswave_2.grib2

# Invoke interpolation logic.
../src/copygb2/copygb2 -g "30 6 0 0 0 0 0 0 1473 1025 12190000 226541000 8 25000000 265000000 5079000 5079000 0 64 25000000 25000000" -i"1 1" -x data/ref_gdaswave.t00z.wcoast.0p16.f000.grib2 test_gdaswave_2.ip.grib2

# Are the files the same?
g2c_compare -v data/ref_gdaswave.t00z.wcoast.0p16.f000.ip.grib2 test_gdaswave_2.ip.grib2

echo "*** SUCCESS!"
exit 0
8 changes: 4 additions & 4 deletions tests/run_copygb_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ echo "*** Running copygb test"
cmp -i 120 test_gdaswave_2.grib1.idx data/ref_gdaswave_2.grib1.idx

# Interpolate GFS landmask to NCEP grid 172
#../src/copygb/copygb -g172 -x data/ref_gfs.landmask.grib1 172.land.grib1
#cmp 172.land.grib1 data/ref_grid_172.landmask.grib1
../src/copygb/copygb -g172 -x data/ref_gfs.landmask.grib1 172.land.grib1
cmp 172.land.grib1 data/ref_grid_172.landmask.grib1

# Interpolate GFS landmask to NCEP grid 220
#../src/copygb/copygb -g220 -x data/ref_gfs.landmask.grib1 220.land.grib1
#cmp 220.land.grib1 data/ref_grid_220.landmask.grib1
../src/copygb/copygb -g220 -x data/ref_gfs.landmask.grib1 220.land.grib1
cmp 220.land.grib1 data/ref_grid_220.landmask.grib1

echo "*** SUCCESS!"
exit 0