Closed climbfuji closed 1 month ago
Tests are done at https://github.com/ufs-community/ufs-weather-model/pull/2463. @grantfirl @dustinswales Can you merge this pr?
@mkavulich @dustinswales We need another approval before we can merge this.
There are also mismatched parens in the other new test schemes, I assume due to copy-paste
I can fix those parentheses - I don't think it is necessary to retest with UFS, since all the "bugs" are in test_prebuild/... ? @grantfirl @dustinswales ?
Done in f80f9c9a. Here is the output of test_prebuild/run_all_tests.sh
. No more warnings.
> ./run_all_tests.sh 2>&1 | tee run_all_tests.log
Running unit_tests
+ python3 ./test_metadata_parser.py
+ python3 ./test_mkstatic.py
Running test_opt_arg
INFO: Logging level set to INFO
INFO: Found TYPEDEFS_NEW_METADATA dictionary in config, assume at least some data is in new metadata format
INFO: No suites were given, compiling a list of all suites
INFO: Adding suite definition file suite_opt_arg_suite.xml
INFO: Parsing suite definition files ...
INFO: Parsing suite definition file ./suite_opt_arg_suite.xml ...
INFO: Parsing metadata tables for variables provided by host model ...
INFO: Parsed variable definition tables in module ccpp_types
INFO: Parsed variable definition tables in module ccpp_kinds
INFO: Parsed variable definition tables in module data
INFO: Convert local names from new metadata format into old metadata format ...
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_opt_arg.html
INFO: Parsing metadata tables in physics scheme files ...
INFO: Parsed tables in scheme opt_arg_scheme with dependencies ['ccpp_kinds.F90']
INFO: Checking for existence of schemes in suites ...
INFO: Adding CCPP suite variables to list of requested variables
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_opt_arg.tex
INFO: Comparing metadata for requested and provided variables ...
INFO: Automatic unit conversion from m to km for opt_arg_2 after returning from MODULE_opt_arg_scheme SCHEME_opt_arg_scheme SUBROUTINE_opt_arg_scheme_timestep_init
INFO: Automatic unit conversion from m to km for opt_arg_2 before entering MODULE_opt_arg_scheme SCHEME_opt_arg_scheme SUBROUTINE_opt_arg_scheme_run
INFO: Automatic unit conversion from m to km for opt_arg_2 after returning from MODULE_opt_arg_scheme SCHEME_opt_arg_scheme SUBROUTINE_opt_arg_scheme_run
INFO: Automatic unit conversion from m to km for opt_arg_2 before entering MODULE_opt_arg_scheme SCHEME_opt_arg_scheme SUBROUTINE_opt_arg_scheme_timestep_finalize
INFO: Automatic unit conversion from m to km for opt_arg_2 after returning from MODULE_opt_arg_scheme SCHEME_opt_arg_scheme SUBROUTINE_opt_arg_scheme_timestep_finalize
INFO: Generating list of Fortran modules containing CCPP type definitions ...
INFO: Generating typedefs makefile/cmakefile snippet ...
INFO: Added 2 typedefs to build/CCPP_TYPEDEFS.mk, build/CCPP_TYPEDEFS.cmake, build/CCPP_TYPEDEFS.sh
INFO: Generating schemes makefile/cmakefile snippet ...
INFO: Added 5 schemes to build/CCPP_SCHEMES.mk, build/CCPP_SCHEMES.cmake, build/CCPP_SCHEMES.sh
INFO: Generating suite and group caps ...
INFO: Generating static API ccpp_static_api.F90 in build ...
INFO: Generating caps makefile/cmakefile snippet ...
INFO: Added 2 auto-generated caps to build/CCPP_CAPS.mk and build/CCPP_CAPS.cmake, build/CCPP_CAPS.sh
INFO: CCPP prebuild step completed successfully.
-- The Fortran compiler identification is GNU 13.3.0
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Check for working Fortran compiler: /home/dom/prod/gcc-13.3.0-manual/bin/gfortran - skipped
-- Found MPI_Fortran: /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempif08.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: Fortran
-- Got CCPP TYPEDEFS from cmakefile include file: ccpp_kinds.mod;ccpp_types.mod
-- Got CCPP SCHEMES from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/ccpp_kinds.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/opt_arg_scheme.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/ccpp_kinds.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/data.F90
-- Got CCPP CAPS from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/build/ccpp_opt_arg_suite_cap.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/build/ccpp_opt_arg_suite_opt_arg_group_cap.F90
-- Got CCPP API from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/build/ccpp_static_api.F90
-- Configuring done (3.5s)
-- Generating done (0.0s)
-- Build files have been written to: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_opt_arg/build
[ 10%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/ccpp_kinds.F90.o
[ 20%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o
[ 30%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/opt_arg_scheme.F90.o
[ 40%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/ccpp_opt_arg_suite_opt_arg_group_cap.F90.o
[ 50%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/ccpp_opt_arg_suite_cap.F90.o
[ 60%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/data.F90.o
[ 70%] Building Fortran object CMakeFiles/ccpp_opt_arg.dir/ccpp_static_api.F90.o
[ 80%] Linking Fortran static library libccpp_opt_arg.a
[ 80%] Built target ccpp_opt_arg
[ 90%] Building Fortran object CMakeFiles/test_opt_arg.x.dir/main.F90.o
[100%] Linking Fortran executable test_opt_arg.x
[100%] Built target test_opt_arg.x
After ccpp_init: check std_arg(:)==1, opt_arg(:)==0, opt_arg_2(:)==0
After ccpp_physics_init: check std_arg(:)==1 and opt_arg(:)==0
After ccpp_physics_timestep_init: check std_arg(:)==1 and opt_arg(:)==2
After ccpp_physics_run: check std_arg(:)==1 and opt_arg(:)==3
After ccpp_physics_timestep_final: check std_arg(:)==7; opt_arg not allocated
After ccpp_physics_timestep_final: check std_arg(:)==7; opt_arg not allocated
Running test_blocked_data
INFO: Logging level set to INFO
INFO: Found TYPEDEFS_NEW_METADATA dictionary in config, assume at least some data is in new metadata format
INFO: No suites were given, compiling a list of all suites
INFO: Adding suite definition file suite_blocked_data_suite.xml
INFO: Parsing suite definition files ...
INFO: Parsing suite definition file ./suite_blocked_data_suite.xml ...
INFO: Parsing metadata tables for variables provided by host model ...
INFO: Parsed variable definition tables in module ccpp_types
INFO: Parsed variable definition tables in module data
INFO: Convert local names from new metadata format into old metadata format ...
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_BLOCKED_DATA.html
INFO: Parsing metadata tables in physics scheme files ...
INFO: Parsed tables in scheme blocked_data_scheme
INFO: Checking for existence of schemes in suites ...
INFO: Adding CCPP suite variables to list of requested variables
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_BLOCKED_DATA.tex
INFO: Comparing metadata for requested and provided variables ...
INFO: Generating list of Fortran modules containing CCPP type definitions ...
INFO: Generating typedefs makefile/cmakefile snippet ...
INFO: Added 2 typedefs to build/CCPP_TYPEDEFS.mk, build/CCPP_TYPEDEFS.cmake, build/CCPP_TYPEDEFS.sh
INFO: Generating schemes makefile/cmakefile snippet ...
INFO: Added 3 schemes to build/CCPP_SCHEMES.mk, build/CCPP_SCHEMES.cmake, build/CCPP_SCHEMES.sh
INFO: Generating suite and group caps ...
INFO: Generating static API ccpp_static_api.F90 in build ...
INFO: Generating caps makefile/cmakefile snippet ...
INFO: Added 2 auto-generated caps to build/CCPP_CAPS.mk and build/CCPP_CAPS.cmake, build/CCPP_CAPS.sh
INFO: CCPP prebuild step completed successfully.
-- The Fortran compiler identification is GNU 13.3.0
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Check for working Fortran compiler: /home/dom/prod/gcc-13.3.0-manual/bin/gfortran - skipped
-- Found MPI_Fortran: /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempif08.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: Fortran
-- Got CCPP TYPEDEFS from cmakefile include file: ccpp_types.mod;data.mod
-- Got CCPP SCHEMES from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/blocked_data_scheme.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/data.F90
-- Got CCPP CAPS from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/build/ccpp_blocked_data_suite_blocked_data_group_cap.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/build/ccpp_blocked_data_suite_cap.F90
-- Got CCPP API from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/build/ccpp_static_api.F90
-- Configuring done (3.2s)
-- Generating done (0.0s)
-- Build files have been written to: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_blocked_data/build
[ 11%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/blocked_data_scheme.F90.o
[ 22%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o
[ 33%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/data.F90.o
[ 44%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/ccpp_blocked_data_suite_blocked_data_group_cap.F90.o
[ 55%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/ccpp_blocked_data_suite_cap.F90.o
[ 66%] Building Fortran object CMakeFiles/ccpp_blocked_data.dir/ccpp_static_api.F90.o
[ 77%] Linking Fortran static library libccpp_blocked_data.a
[ 77%] Built target ccpp_blocked_data
[ 88%] Building Fortran object CMakeFiles/test_blocked_data.x.dir/main.F90.o
[100%] Linking Fortran executable test_blocked_data.x
[100%] Built target test_blocked_data.x
Allocated array_data for block 1 to size 6
Allocated array_data for block 2 to size 6
Allocated array_data for block 3 to size 6
Allocated array_data for block 4 to size 3
In blocked_data_scheme_init: checking size of data array to be 21
In blocked_data_scheme_timestep_init: checking size of data array to be 21
In blocked_data_scheme_run: checking size of data array for block 1 to be 6
In blocked_data_scheme_run: checking size of data array for block 2 to be 6
In blocked_data_scheme_run: checking size of data array for block 3 to be 6
In blocked_data_scheme_run: checking size of data array for block 4 to be 3
In blocked_data_scheme_timestep_finalize: checking size of data array to be 21
In blocked_data_scheme_finalize: checking size of data array to be 21
Running test_chunked_data
INFO: Logging level set to INFO
INFO: Found TYPEDEFS_NEW_METADATA dictionary in config, assume at least some data is in new metadata format
INFO: No suites were given, compiling a list of all suites
INFO: Adding suite definition file suite_chunked_data_suite.xml
INFO: Parsing suite definition files ...
INFO: Parsing suite definition file ./suite_chunked_data_suite.xml ...
INFO: Parsing metadata tables for variables provided by host model ...
INFO: Parsed variable definition tables in module ccpp_types
INFO: Parsed variable definition tables in module data
INFO: Convert local names from new metadata format into old metadata format ...
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_CHUNKED_DATA.html
INFO: Parsing metadata tables in physics scheme files ...
INFO: Parsed tables in scheme chunked_data_scheme
INFO: Checking for existence of schemes in suites ...
INFO: Adding CCPP suite variables to list of requested variables
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_CHUNKED_DATA.tex
INFO: Comparing metadata for requested and provided variables ...
INFO: Generating list of Fortran modules containing CCPP type definitions ...
INFO: Generating typedefs makefile/cmakefile snippet ...
INFO: Added 2 typedefs to build/CCPP_TYPEDEFS.mk, build/CCPP_TYPEDEFS.cmake, build/CCPP_TYPEDEFS.sh
INFO: Generating schemes makefile/cmakefile snippet ...
INFO: Added 3 schemes to build/CCPP_SCHEMES.mk, build/CCPP_SCHEMES.cmake, build/CCPP_SCHEMES.sh
INFO: Generating suite and group caps ...
INFO: Generating static API ccpp_static_api.F90 in build ...
INFO: Generating caps makefile/cmakefile snippet ...
INFO: Added 2 auto-generated caps to build/CCPP_CAPS.mk and build/CCPP_CAPS.cmake, build/CCPP_CAPS.sh
INFO: CCPP prebuild step completed successfully.
-- The Fortran compiler identification is GNU 13.3.0
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Check for working Fortran compiler: /home/dom/prod/gcc-13.3.0-manual/bin/gfortran - skipped
-- Found MPI_Fortran: /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempif08.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: Fortran
-- Got CCPP TYPEDEFS from cmakefile include file: ccpp_types.mod;data.mod
-- Got CCPP SCHEMES from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/chunked_data_scheme.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/data.F90
-- Got CCPP CAPS from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/build/ccpp_chunked_data_suite_cap.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/build/ccpp_chunked_data_suite_chunked_data_group_cap.F90
-- Got CCPP API from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/build/ccpp_static_api.F90
-- Configuring done (3.6s)
-- Generating done (0.0s)
-- Build files have been written to: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_chunked_data/build
[ 11%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o
[ 22%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/chunked_data_scheme.F90.o
[ 33%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/data.F90.o
[ 44%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/ccpp_chunked_data_suite_chunked_data_group_cap.F90.o
[ 55%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/ccpp_chunked_data_suite_cap.F90.o
[ 66%] Building Fortran object CMakeFiles/ccpp_chunked_data.dir/ccpp_static_api.F90.o
[ 77%] Linking Fortran static library libccpp_chunked_data.a
[ 77%] Built target ccpp_chunked_data
[ 88%] Building Fortran object CMakeFiles/test_chunked_data.x.dir/main.F90.o
[100%] Linking Fortran executable test_chunked_data.x
[100%] Built target test_chunked_data.x
Chunked_data_instance%array_data to size 21
In chunked_data_scheme_init: checking size of data array to be 21
In chunked_data_scheme_timestep_init: checking size of data array to be 21
In chunked_data_scheme_run: checking size of data array for chunk 1 to be 6
In chunked_data_scheme_run: checking size of data array for chunk 2 to be 6
In chunked_data_scheme_run: checking size of data array for chunk 3 to be 6
In chunked_data_scheme_run: checking size of data array for chunk 4 to be 3
In chunked_data_scheme_timestep_finalize: checking size of data array to be 21
In chunked_data_scheme_finalize: checking size of data array to be 21
Running test_unit_conv
INFO: Logging level set to DEBUG
INFO: Found TYPEDEFS_NEW_METADATA dictionary in config, assume at least some data is in new metadata format
INFO: No suites were given, compiling a list of all suites
INFO: Adding suite definition file suite_unit_conv_suite.xml
INFO: Parsing suite definition files ...
INFO: Parsing suite definition file ./suite_unit_conv_suite.xml ...
INFO: Parsing metadata tables for variables provided by host model ...
DEBUG: Parsing file ccpp_types.F90 with registry OrderedDict([('ccpp_types', OrderedDict([('ccpp_t', [50, 63])]))])
Parsing ddt ccpp_t, at ccpp_types.meta:7
INFO: Parsing ddt ccpp_t, at ccpp_types.meta:7
Adding errflg to ccpp_t
DEBUG: Adding errflg to ccpp_t
Adding errmsg to ccpp_t
DEBUG: Adding errmsg to ccpp_t
Adding loop_cnt to ccpp_t
DEBUG: Adding loop_cnt to ccpp_t
Adding loop_max to ccpp_t
DEBUG: Adding loop_max to ccpp_t
Adding blk_no to ccpp_t
DEBUG: Adding blk_no to ccpp_t
Adding chunk_no to ccpp_t
DEBUG: Adding chunk_no to ccpp_t
Adding thrd_no to ccpp_t
DEBUG: Adding thrd_no to ccpp_t
Adding thrd_cnt to ccpp_t
DEBUG: Adding thrd_cnt to ccpp_t
Adding ccpp_instance to ccpp_t
DEBUG: Adding ccpp_instance to ccpp_t
Parsing ddt MPI_Comm, at ccpp_types.meta:72
INFO: Parsing ddt MPI_Comm, at ccpp_types.meta:72
Parsing module ccpp_types, at ccpp_types.meta:83
INFO: Parsing module ccpp_types, at ccpp_types.meta:83
Adding ccpp_t to ccpp_types
DEBUG: Adding ccpp_t to ccpp_types
Adding one to ccpp_types
DEBUG: Adding one to ccpp_types
Adding MPI_Comm to ccpp_types
DEBUG: Adding MPI_Comm to ccpp_types
DEBUG: Module name: ccpp_types
DEBUG: Module variables: ccpp_t, ccpp_constant_one, mpi_comm
DEBUG: Variables in derived type ccpp_t: ccpp_error_code, ccpp_error_message, ccpp_loop_counter, ccpp_loop_extent, ccpp_block_number, ccpp_chunk_number, ccpp_thread_number, ccpp_thread_count, ccpp_instance
INFO: Parsed variable definition tables in module ccpp_types
DEBUG: Parsing file ccpp_kinds.F90 with registry OrderedDict([('ccpp_kinds', OrderedDict())])
Parsing module ccpp_kinds, at ccpp_kinds.meta:7
INFO: Parsing module ccpp_kinds, at ccpp_kinds.meta:7
Adding kind_phys to ccpp_kinds
DEBUG: Adding kind_phys to ccpp_kinds
DEBUG: Module name: ccpp_kinds
DEBUG: Module variables: kind_phys
INFO: Parsed variable definition tables in module ccpp_kinds
DEBUG: Parsing file data.F90 with registry OrderedDict([('data', OrderedDict())])
Parsing module data, at data.meta:5
INFO: Parsing module data, at data.meta:5
Adding cdata to data
DEBUG: Adding cdata to data
Adding ncols to data
DEBUG: Adding ncols to data
Adding nspecies to data
DEBUG: Adding nspecies to data
Adding data_array to data
DEBUG: Adding data_array to data
Adding data_array(:, 2) to data
DEBUG: Adding data_array(:, 2) to data
Adding opt_array_flag to data
DEBUG: Adding opt_array_flag to data
Adding data_array(:, 1) to data
DEBUG: Adding data_array(:, 1) to data
DEBUG: Module name: data
DEBUG: Module variables: ccpp_t_instance, horizontal_loop_extent, number_of_species, data_array_all_species, data_array, flag_for_opt_array, data_array_opt
INFO: Parsed variable definition tables in module data
INFO: Convert local names from new metadata format into old metadata format ...
DEBUG: Converting local name blk_no of variable ccpp_block_number from new to old metadata
DEBUG: Updating local name of variable ccpp_block_number from blk_no to cdata%blk_no
DEBUG: Converting local name chunk_no of variable ccpp_chunk_number from new to old metadata
DEBUG: Updating local name of variable ccpp_chunk_number from chunk_no to cdata%chunk_no
DEBUG: Converting local name one of variable ccpp_constant_one from new to old metadata
DEBUG: Converting local name errflg of variable ccpp_error_code from new to old metadata
DEBUG: Updating local name of variable ccpp_error_code from errflg to cdata%errflg
DEBUG: Converting local name errmsg of variable ccpp_error_message from new to old metadata
DEBUG: Updating local name of variable ccpp_error_message from errmsg to cdata%errmsg
DEBUG: Converting local name ccpp_instance of variable ccpp_instance from new to old metadata
DEBUG: Updating local name of variable ccpp_instance from ccpp_instance to cdata%ccpp_instance
DEBUG: Converting local name loop_cnt of variable ccpp_loop_counter from new to old metadata
DEBUG: Updating local name of variable ccpp_loop_counter from loop_cnt to cdata%loop_cnt
DEBUG: Converting local name loop_max of variable ccpp_loop_extent from new to old metadata
DEBUG: Updating local name of variable ccpp_loop_extent from loop_max to cdata%loop_max
DEBUG: Converting local name ccpp_t of variable ccpp_t from new to old metadata
DEBUG: Converting local name cdata of variable ccpp_t_instance from new to old metadata
DEBUG: Converting local name thrd_cnt of variable ccpp_thread_count from new to old metadata
DEBUG: Updating local name of variable ccpp_thread_count from thrd_cnt to cdata%thrd_cnt
DEBUG: Converting local name thrd_no of variable ccpp_thread_number from new to old metadata
DEBUG: Updating local name of variable ccpp_thread_number from thrd_no to cdata%thrd_no
DEBUG: Converting local name data_array(:, 2) of variable data_array from new to old metadata
DEBUG: Updating local name of variable data_array from data_array(:, 2) to data_array(:,2)
DEBUG: Converting local name data_array of variable data_array_all_species from new to old metadata
DEBUG: Converting local name data_array(:, 1) of variable data_array_opt from new to old metadata
DEBUG: Updating local name of variable data_array_opt from data_array(:, 1) to data_array(:,1)
DEBUG: Converting local name opt_array_flag of variable flag_for_opt_array from new to old metadata
DEBUG: Converting local name ncols of variable horizontal_loop_extent from new to old metadata
DEBUG: Variable kind_phys is in old metadata format, no conversion necessary
DEBUG: Converting local name MPI_Comm of variable mpi_comm from new to old metadata
DEBUG: Converting local name nspecies of variable number_of_species from new to old metadata
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_UNIT_CONV.html
INFO: Parsing metadata tables in physics scheme files ...
DEBUG: Parsing file unit_conv_scheme_1.F90 with registry OrderedDict([('unit_conv_scheme_1', OrderedDict([('unit_conv_scheme_1', OrderedDict([('unit_conv_scheme_1_run', [15, 43])]))]))])
Parsing scheme unit_conv_scheme_1_run, at unit_conv_scheme_1.meta:7
INFO: Parsing scheme unit_conv_scheme_1_run, at unit_conv_scheme_1.meta:7
Adding errmsg to unit_conv_scheme_1_run
DEBUG: Adding errmsg to unit_conv_scheme_1_run
Adding errflg to unit_conv_scheme_1_run
DEBUG: Adding errflg to unit_conv_scheme_1_run
Adding data_array to unit_conv_scheme_1_run
DEBUG: Adding data_array to unit_conv_scheme_1_run
Adding data_array_opt to unit_conv_scheme_1_run
DEBUG: Adding data_array_opt to unit_conv_scheme_1_run
DEBUG: Module name: unit_conv_scheme_1
DEBUG: Scheme name: unit_conv_scheme_1
DEBUG: Scheme dependencies: []
DEBUG: Variables in subroutine unit_conv_scheme_1_run: ccpp_error_message, ccpp_error_code, data_array, data_array_opt
DEBUG: Parsing file unit_conv_scheme_2.F90 with registry OrderedDict([('unit_conv_scheme_2', OrderedDict([('unit_conv_scheme_2', OrderedDict([('unit_conv_scheme_2_run', [15, 43])]))]))])
Parsing scheme unit_conv_scheme_2_run, at unit_conv_scheme_2.meta:7
INFO: Parsing scheme unit_conv_scheme_2_run, at unit_conv_scheme_2.meta:7
Adding errmsg to unit_conv_scheme_2_run
DEBUG: Adding errmsg to unit_conv_scheme_2_run
Adding errflg to unit_conv_scheme_2_run
DEBUG: Adding errflg to unit_conv_scheme_2_run
Adding data_array to unit_conv_scheme_2_run
DEBUG: Adding data_array to unit_conv_scheme_2_run
Adding data_array_opt to unit_conv_scheme_2_run
DEBUG: Adding data_array_opt to unit_conv_scheme_2_run
DEBUG: Module name: unit_conv_scheme_2
DEBUG: Scheme name: unit_conv_scheme_2
DEBUG: Scheme dependencies: []
DEBUG: Variables in subroutine unit_conv_scheme_2_run: ccpp_error_message, ccpp_error_code, data_array, data_array_opt
INFO: Checking for existence of schemes in suites ...
INFO: Adding CCPP suite variables to list of requested variables
DEBUG: Adding CCPP suite variable ccpp_loop_counter to list of requested variables
DEBUG: Adding CCPP suite variable ccpp_loop_extent to list of requested variables
INFO: Metadata table for model FV3 written to build/CCPP_VARIABLES_UNIT_CONV.tex
INFO: Comparing metadata for requested and provided variables ...
DEBUG: Requested variable ccpp_error_code in MODULE_unit_conv_scheme_1 SCHEME_unit_conv_scheme_1 SUBROUTINE_unit_conv_scheme_1_run matched to target cdata%errflg in module ccpp_types
DEBUG: Requested variable ccpp_error_code in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run matched to target cdata%errflg in module ccpp_types
DEBUG: Requested variable ccpp_error_message in MODULE_unit_conv_scheme_1 SCHEME_unit_conv_scheme_1 SUBROUTINE_unit_conv_scheme_1_run matched to target cdata%errmsg in module ccpp_types
DEBUG: Update kind information for requested variable ccpp_error_message in MODULE_unit_conv_scheme_1 SCHEME_unit_conv_scheme_1 SUBROUTINE_unit_conv_scheme_1_run from len=* to len=512
DEBUG: Requested variable ccpp_error_message in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run matched to target cdata%errmsg in module ccpp_types
DEBUG: Update kind information for requested variable ccpp_error_message in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run from len=* to len=512
DEBUG: Requested variable ccpp_loop_counter in None matched to target cdata%loop_cnt in module ccpp_types
DEBUG: Requested variable ccpp_loop_extent in None matched to target cdata%loop_max in module ccpp_types
DEBUG: Registering unit conversion for variable data_array in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
INFO: Automatic unit conversion from km to m for data_array before entering MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
INFO: Automatic unit conversion from km to m for data_array after returning from MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
DEBUG: Requested variable data_array in MODULE_unit_conv_scheme_1 SCHEME_unit_conv_scheme_1 SUBROUTINE_unit_conv_scheme_1_run matched to target data_array(:,2) in module data
DEBUG: Requested variable data_array in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run matched to target data_array(:,2) in module data
DEBUG: Registering unit conversion for variable data_array_opt in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
INFO: Automatic unit conversion from km to m for data_array_opt before entering MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
INFO: Automatic unit conversion from km to m for data_array_opt after returning from MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run
DEBUG: Requested variable data_array_opt in MODULE_unit_conv_scheme_1 SCHEME_unit_conv_scheme_1 SUBROUTINE_unit_conv_scheme_1_run matched to target data_array(:,1) in module data
DEBUG: Requested variable data_array_opt in MODULE_unit_conv_scheme_2 SCHEME_unit_conv_scheme_2 SUBROUTINE_unit_conv_scheme_2_run matched to target data_array(:,1) in module data
INFO: Generating list of Fortran modules containing CCPP type definitions ...
INFO: Generating typedefs makefile/cmakefile snippet ...
INFO: Added 2 typedefs to build/CCPP_TYPEDEFS.mk, build/CCPP_TYPEDEFS.cmake, build/CCPP_TYPEDEFS.sh
INFO: Generating schemes makefile/cmakefile snippet ...
INFO: Added 5 schemes to build/CCPP_SCHEMES.mk, build/CCPP_SCHEMES.cmake, build/CCPP_SCHEMES.sh
INFO: Generating suite and group caps ...
DEBUG: Generating suite and group caps for suite unit_conv_suite...
DEBUG: Adding variable ccpp_constant_one for handling blocked data structures
DEBUG: Adding variable horizontal_loop_extent for handling blocked data structures
DEBUG: Adding variable flag_for_opt_array for handling conditionals
DEBUG: Adding dimension number_of_species for parent variable data_array_all_species
INFO: Generating static API ccpp_static_api.F90 in build ...
INFO: Generating caps makefile/cmakefile snippet ...
INFO: Added 2 auto-generated caps to build/CCPP_CAPS.mk and build/CCPP_CAPS.cmake, build/CCPP_CAPS.sh
INFO: CCPP prebuild step completed successfully.
-- The Fortran compiler identification is GNU 13.3.0
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Check for working Fortran compiler: /home/dom/prod/gcc-13.3.0-manual/bin/gfortran - skipped
-- Found MPI_Fortran: /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempif08.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: Fortran
-- Got CCPP TYPEDEFS from cmakefile include file: ccpp_kinds.mod;ccpp_types.mod
-- Got CCPP SCHEMES from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/unit_conv_scheme_1.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/unit_conv_scheme_2.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/ccpp_kinds.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/data.F90
-- Got CCPP CAPS from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_unit_conv_suite_cap.F90;/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_unit_conv_suite_unit_conv_group_cap.F90
-- Got CCPP API from cmakefile include file: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_static_api.F90
-- Configuring done (3.4s)
-- Generating done (0.0s)
-- Build files have been written to: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -S/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv -B/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build --check-build-system CMakeFiles/Makefile.cmake 0
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_progress_start /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build//CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
make -f CMakeFiles/ccpp_unit_conv.dir/build.make CMakeFiles/ccpp_unit_conv.dir/depend
make[2]: Entering directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
cd /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build && /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_depends "Unix Makefiles" /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/ccpp_unit_conv.dir/DependInfo.cmake "--color="
Dependee "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/ccpp_unit_conv.dir/DependInfo.cmake" is newer than depender "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/ccpp_unit_conv.dir/depend.internal".
Dependee "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/ccpp_unit_conv.dir/depend.internal".
Scanning dependencies of target ccpp_unit_conv
make[2]: Leaving directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
make -f CMakeFiles/ccpp_unit_conv.dir/build.make CMakeFiles/ccpp_unit_conv.dir/build
make[2]: Entering directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
[ 9%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/ccpp_kinds.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/ccpp_kinds.F90 -o CMakeFiles/ccpp_unit_conv.dir/ccpp_kinds.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod ccpp_kinds.mod CMakeFiles/ccpp_unit_conv.dir/ccpp_kinds.mod.stamp GNU
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/ccpp_kinds.F90.o.provides.build
[ 18%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90 -o CMakeFiles/ccpp_unit_conv.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod ccpp_types.mod CMakeFiles/ccpp_unit_conv.dir/ccpp_types.mod.stamp GNU
[ 27%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_1.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/unit_conv_scheme_1.F90 -o CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_1.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod unit_conv_scheme_1.mod CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_1.mod.stamp GNU
[ 36%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_2.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/unit_conv_scheme_2.F90 -o CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_2.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod unit_conv_scheme_2.mod CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_2.mod.stamp GNU
[ 45%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_unit_conv_group_cap.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_unit_conv_suite_unit_conv_group_cap.F90 -o CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_unit_conv_group_cap.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod ccpp_unit_conv_suite_unit_conv_group_cap.mod CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_unit_conv_group_cap.mod.stamp GNU
[ 54%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_cap.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_unit_conv_suite_cap.F90 -o CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_cap.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod ccpp_unit_conv_suite_cap.mod CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_cap.mod.stamp GNU
[ 63%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/data.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/data.F90 -o CMakeFiles/ccpp_unit_conv.dir/data.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod data.mod CMakeFiles/ccpp_unit_conv.dir/data.mod.stamp GNU
[ 72%] Building Fortran object CMakeFiles/ccpp_unit_conv.dir/ccpp_static_api.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/include -I/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/ccpp_static_api.F90 -o CMakeFiles/ccpp_unit_conv.dir/ccpp_static_api.F90.o
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_copy_f90_mod ccpp_static_api.mod CMakeFiles/ccpp_unit_conv.dir/ccpp_static_api.mod.stamp GNU
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/ccpp_static_api.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_cap.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_unit_conv_group_cap.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/data.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_1.F90.o.provides.build
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E touch CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_2.F90.o.provides.build
[ 81%] Linking Fortran static library libccpp_unit_conv.a
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -P CMakeFiles/ccpp_unit_conv.dir/cmake_clean_target.cmake
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_link_script CMakeFiles/ccpp_unit_conv.dir/link.txt --verbose=1
/usr/bin/ar qc libccpp_unit_conv.a "CMakeFiles/ccpp_unit_conv.dir/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/src/ccpp_types.F90.o" CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_1.F90.o CMakeFiles/ccpp_unit_conv.dir/unit_conv_scheme_2.F90.o CMakeFiles/ccpp_unit_conv.dir/ccpp_kinds.F90.o CMakeFiles/ccpp_unit_conv.dir/data.F90.o CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_cap.F90.o CMakeFiles/ccpp_unit_conv.dir/ccpp_unit_conv_suite_unit_conv_group_cap.F90.o CMakeFiles/ccpp_unit_conv.dir/ccpp_static_api.F90.o
/usr/bin/ranlib libccpp_unit_conv.a
make[2]: Leaving directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
[ 81%] Built target ccpp_unit_conv
make -f CMakeFiles/test_unit_conv.x.dir/build.make CMakeFiles/test_unit_conv.x.dir/depend
make[2]: Entering directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
cd /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build && /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_depends "Unix Makefiles" /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/test_unit_conv.x.dir/DependInfo.cmake "--color="
Dependee "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/test_unit_conv.x.dir/DependInfo.cmake" is newer than depender "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/test_unit_conv.x.dir/depend.internal".
Dependee "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles/test_unit_conv.x.dir/depend.internal".
Scanning dependencies of target test_unit_conv.x
make[2]: Leaving directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
make -f CMakeFiles/test_unit_conv.x.dir/build.make CMakeFiles/test_unit_conv.x.dir/build
make[2]: Entering directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
[ 90%] Building Fortran object CMakeFiles/test_unit_conv.x.dir/main.F90.o
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none -c /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/main.F90 -o CMakeFiles/test_unit_conv.x.dir/main.F90.o
[100%] Linking Fortran executable test_unit_conv.x
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_link_script CMakeFiles/test_unit_conv.x.dir/link.txt --verbose=1
/home/dom/prod/gcc-13.3.0-manual/bin/gfortran -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check -ggdb -fbacktrace -ffree-line-length-none CMakeFiles/test_unit_conv.x.dir/main.F90.o -o test_unit_conv.x -Wl,-rpath,/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib libccpp_unit_conv.a /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempif08.so /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_usempi_ignore_tkr.so /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi_mpifh.so /home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/openmpi-5.0.3-jo5od3o/lib/libmpi.so
make[2]: Leaving directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
[100%] Built target test_unit_conv.x
make[1]: Leaving directory '/home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build'
/home/dom/prod/spack-stack-1.8.0/envs/ue-gcc-13.3.0/install/gcc/13.3.0/cmake-3.27.9-ah5n4og/bin/cmake -E cmake_progress_start /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs/test_prebuild/test_unit_conv/build/CMakeFiles 0
In unit_conv_scheme_1_run: checking min/max values of data array to be approximately 0.1000E+01
In unit_conv_scheme_1_run: checking for presence of optional data array
In unit_conv_scheme_1_run: checking min/max values of optional data array to be approximately 0.1000E+01
In unit_conv_scheme_2_run: checking min/max values of data array to be approximately 0.1000E-02
In unit_conv_scheme_2_run: checking for presence of optional data array
In unit_conv_scheme_2_run: checking min/max values of optional data array to be approximately 0.1000E-02
In unit_conv_scheme_1_run: checking min/max values of data array to be approximately 0.1000E+01
In unit_conv_scheme_1_run: checking for presence of optional data array
In unit_conv_scheme_1_run: checking min/max values of optional data array to be approximately 0.1000E+01
Running test_track_variables
============================= test session starts ==============================
platform linux -- Python 3.11.7, pytest-8.3.3, pluggy-1.5.0
rootdir: /home/dom/work/ccpp/ccpp-framework-main-20241009-prebuild-unitconv-bugs
configfile: pytest.ini
collected 5 items
test_track_variables.py ..... [100%]
============================== 5 passed in 0.11s ===============================
I agree its unnecessary to retest UFS since this is only for stand-alone testing. Thanks for fixing that.
Thanks for spotting those. I am also surprised that this only gave warnings, not errors.
Description
Bug fix in
scripts/mkstatic.py
: definedim_string_allocate
so that temporary (group cap) variables of rankn
that correspond to a slice of ann+1
dimensional array have the right dimensions in the assignment calls and subroutine call lists. See the inline documentation added inmkstatic.py
around line 1476 for more information.Addition of test
test_prebuild/test_unit_conv
to test for the above and to test for thecapgen
issue reported in https://github.com/NCAR/ccpp-framework/issues/594 (Unit conversion bug when variable is used by two different schemes with different units). Note thatccpp_prebuild.py
did not suffer from this bug, but I wanted to make sure that we test for it.In the development of the new test
test_unit_conv
, I discovered that we should declare all incoming host variables in the group caps astarget
. This is because it is tricky in prebuild to determine that a parent variablebar
needs to have thetarget
attribute in case a slice of it has the active attribute. This is a bit of an edge case, but I believe this additional attribute is safe. I will run full UFS RTs with this PR to check if the results are b4b or if the addition oftarget
causes the compiler to optimize differently.Minor updates to
test_prebuid/{test_blocked_data,test_chunked_data}
: fix wrong name of subroutines in diagnostic error messages, set thread number and thread counter to safe values when running over the entire domain.User interface changes?: No
Resolves https://github.com/NCAR/ccpp-framework/issues/598
Testing: test removed: n/a unit tests: docstring tests not run, since the files that are modified in this PR do not have docstring tests system tests: CI tests all pass manual testing:
test_prebuild/run_all_tests.sh
on my laptop withgcc@13.3.0
andopenmpi/5.0.3