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

changes needed for R21C #2685

Merged
merged 2 commits into from
Mar 28, 2024
Merged
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
108 changes: 5 additions & 103 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,8 @@ workflows:
baselibs_version: *baselibs_version
repo: GEOSgcm
checkout_fixture: true
mepodevelop: true
fixture_branch: R21C
mepodevelop: false
checkout_mapl_branch: true
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra, retained for one day

Expand All @@ -116,43 +117,10 @@ workflows:
baselibs_version: *baselibs_version
repo: GEOSgcm
checkout_fixture: true
mepodevelop: true
checkout_mapl_branch: true
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra, retained for one day

# Build GEOSldas on ifort
- ci/build:
name: build-GEOSldas-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [ifort]
baselibs_version: *baselibs_version
repo: GEOSldas
mepodevelop: false
checkout_fixture: true
fixture_branch: develop
checkout_mapl_branch: true

# Build GEOSldas on gfortran -- only to main
- ci/build:
filters:
branches:
only:
- main
name: build-GEOSldas-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran]
baselibs_version: *baselibs_version
repo: GEOSldas
fixture_branch: R21C
mepodevelop: false
checkout_fixture: true
fixture_branch: develop
checkout_mapl_branch: true
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra, retained for one day

# Build GEOSadas (ifort only, needs a couple develop branches) -- only to main
- ci/build:
Expand All @@ -170,9 +138,7 @@ workflows:
baselibs_version: *baselibs_version
repo: GEOSadas
checkout_fixture: true
# This branch on GEOSadas will be used to track subrepos needed
# for GEOSadas + MAPL develop much like how we do with MAPL 3
fixture_branch: feature/mathomp4/mapldevelop
fixture_branch: R21C
checkout_mapl_branch: true
mepodevelop: false
rebuild_procs: 1
Expand Down Expand Up @@ -214,67 +180,3 @@ workflows:
bcs_version: *bcs_version
gcm_ocean_type: MOM6
change_layout: false

# Run MAPL Tutorials -- only to main
- ci/run_mapl_tutorial:
filters:
branches:
only:
- main
name: run-<< matrix.tutorial_name >>-Tutorial-with-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
#compiler: [gfortran, ifort]
compiler: [ifort]
tutorial_name:
- hello_world
- parent_no_children
- parent_one_child_import_via_extdata
- parent_one_child_no_imports
- parent_two_siblings_connect_import_export
# We will only run the tutorials with GNU make. No need to double up
# as Ninja is a build test only
requires:
- build-and-test-MAPL-on-<< matrix.compiler >>-using-Unix Makefiles
baselibs_version: *baselibs_version

build-and-publish-docker:
when:
equal: [ "release", << pipeline.parameters.GHA_Event >> ]
jobs:
- ci/publish-docker:
filters:
tags:
only: /^v.*$/
name: publish-intel-docker-image
context:
- docker-hub-creds
- ghcr-creds
os_version: *os_version
baselibs_version: *baselibs_version
container_name: mapl
mpi_name: intelmpi
mpi_version: 2021.6.0
compiler_name: intel
compiler_version: 2022.1.0
image_name: geos-env
tag_build_arg_name: *tag_build_arg_name
- ci/publish-docker:
filters:
tags:
only: /^v.*$/
name: publish-gcc-docker-image
context:
- docker-hub-creds
- ghcr-creds
os_version: *os_version
baselibs_version: *baselibs_version
container_name: mapl
mpi_name: openmpi
mpi_version: 4.1.4
compiler_name: gcc
compiler_version: 12.1.0
image_name: geos-env-mkl
tag_build_arg_name: *tag_build_arg_name
8 changes: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Deprecated

## [2.35.4] - 2023-07-11
## [v2.35.3+R21C_v1.1.0] - 2024-03-28

### Fixed

- Fix inconsistency in History output so that multi-dimensional coordinate variables are also compressed if requested in the collection

## [v2.35.3+R21C_v1.0.0] - 2024-02-16

### Fixed

Expand Down
9 changes: 9 additions & 0 deletions griddedio/GriddedIO.F90
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ subroutine CreateFileMetaData(this,items,bundle,timeInfo,vdata,ogrid,global_attr
integer :: metadataVarsSize
type(StringStringMapIterator) :: s_iter
character(len=:), pointer :: attr_name, attr_val
class(Variable), pointer :: coord_var
integer :: status

this%items = items
Expand Down Expand Up @@ -155,6 +156,14 @@ subroutine CreateFileMetaData(this,items,bundle,timeInfo,vdata,ogrid,global_attr
factory => get_factory(this%output_grid,rc=status)
_VERIFY(status)
call factory%append_metadata(this%metadata)
coord_var => this%metadata%get_variable('lons')
if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel)
coord_var => this%metadata%get_variable('lats')
if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel)
coord_var => this%metadata%get_variable('corner_lons')
if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel)
coord_var => this%metadata%get_variable('corner_lats')
if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel)

if (present(vdata)) then
this%vdata=vdata
Expand Down
7 changes: 7 additions & 0 deletions pfio/Variable.F90
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ module pFIO_VariableMod

procedure :: get_chunksizes
procedure :: get_deflation
procedure :: set_deflation
procedure :: get_quantize_algorithm
procedure :: get_quantize_level
procedure :: is_attribute_present
Expand Down Expand Up @@ -282,6 +283,12 @@ function get_deflation(this) result(deflateLevel)
deflateLevel=this%deflation
end function get_deflation

subroutine set_deflation(this,deflate_level)
class (Variable), target, intent(inout) :: this
integer, intent(in) :: deflate_level
this%deflation = deflate_level
end subroutine

function get_quantize_algorithm(this) result(quantizeAlgorithm)
class (Variable), target, intent(In) :: this
integer :: quantizeAlgorithm
Expand Down
Loading