Hosted by CU logo University of Colorado
Powered by ESGF-CoG logo
Welcome, Guest. | Login | Create Account
ESMF logo
You are at the CoG-CU node

Release Schedule: December 2014

Public releases have an "r" after the release name, e.g. 5_2_0r. Public releases that have been patched are labeled with their patch number e.g. "rp1", "rp2".

AS BUILT: July 2014 ESMF v6.3.0rp1

Task Description
Incorporate MAPL into ESMF build/distro as a separate package Move MAPL into the ESMF source distribution, so that it can be accessed like the NUOPC Layer.
Add Attribute tests The AttributeUpdate() functionality could use some more extensive testing. It is currently tested for a majority of normal use cases, but there are edge cases that need to be considered, such as:  a) Closed loop object hierarchies - where a two FieldBundles contain the same Field and are both contained in the same State b) After new Containers have been heavily manipulated with Add, Replace, AddReplace, Remove, etc. - this does not apply in the cases where this stuff happens at runtime i.e. after ESMF_StateReconcile() has already been called c) Multiple Reconcile calls - If a Field is in two different States, both of which are Reconciled d) FieldBundle with Fields that have different Grids (not currently available in the api) e) Add tests to verify Attribute removal problem fixed.
Test Attributes with same convention and purpose Confirm that adding multiple Attributes with the same name (convention, purpose) works as expected.
Implement Attribute handles To simplify the interface. The specList will need to be added to the remaining Attribute interfaces, and the under
lying C++ library will need to be modified to function with an arbitrary length list instead of the two convention and purpose strings.
Eliminate the use of netCDF legacy C++ API The current code which calls netcdf uses the 'legacy' C++ API. Investigate moving this to either the C API or the newer C++ API.


February 2015 ESMF v7.0.0

Task Description
Connect OpenClimateGIS to ESMPy We would like to connect OpenClimateGIS and CyberGIS with ESMPy. This requires that ESMPy has a stable API, this is being done under ticket 3606829. The initial work would include a script that imports both OCGIS and ESMPy and does a conversion between data fields and coordinate structures in both applications. The CyberGIS portion of this ticket is not very well defined at this time.
Evaluate OpenACC use Enable ESMF to run with applications that use OpenACC, and evaluate where OpenACC might improve ESMF performance.
Framework support for mapping accelerator resources to components Prototype the support of components that are interleaved across compute resources to support most effective use of available cores and accelerators. Turning this into a guided process requires that the ESMF virtual machine layer becomes aware of the underlying accelerator hardware.
Enable PIO to be turned on everywhere Complete porting of the Parallel I/O package so that it can be on by default.
Setup ESMF C++ Mesh to be replaceable Modify ESMF so that an alternate internal finite element mesh can be used. This will allow the MOAB mesh software to be introduced.
Replace Mesh creation and other methods to be able to build Fields Shifts to an underlying mesh library with more capabilities.
Convert bilinear interpolation to work with MOAB Create a first example and evaluate.
Address advanced Field dictionary issues for NUOPC Implement the CFSS convention.
Change destination to be point list for non-conservative regridding This will enable a regrid destination to be a single point, and will also enable Location Streams to be supported within regridding.
Add per location status output to field regrid store Increase documentation so that there is output for each data point in FieldRegridStore(). This should help users analyze and debug regridding results.
Represent grids with ngons through ESMPy This would allow the Mesh class to represent many sided polygons in the same manner as the weight generation application does.
File to file regrid application Takes data fields+grid specified in a source file and grid in a destination file and regrids the data fields to the destination grid and writes it to the file.
Regrid 3D "Thick" Spherical lines Will support the regridding of a spherical shell with vertical thickness. Using great circles.
Non-conservative regridding on cell center for grid files Support for grid files in GRIDSPEC, UGRID, and ESMF formats in ESMF_RegridWeightGen
Fix problem with proxies involving multiple objects that reference a single object Fix problem where multiple objects that reference a single object produce multiple proxies for the single referenced object after reconcile.  Change the behavior so that, for example, Fields that point to the same Grid produce a single Grid proxy that is referenced multiple times.
Connect LocStreams to Regrid Ben wanted to regrid from a grid to multiple copies of destination points. This seems like it would be a good application of grid->locstream regridding. This ticket also relates to 1893842 where locstream regridding is also mentioned as a subpiece.
Regridding with point cloud as source Eric Hutton and Scott Peckham of CSDMS at CU would like the ability to regrid using a cloud of points as a source. This could be handled like something like nearest neighbor regridding (3103729). They suggest using inverse distance weighting.
Asynchronous I/O components for coupled earth systems Implementation of asynchronous I/O components for coupled earth systems. This may end up as a new NUOPC generic component, e.g. NUOPC_IO.


 ESMF v7.1.0

Task Description
FieldBundleCreate packing behavior The Create call would have the same input info as the ESMF_FieldCreate() plus a namelist of the Fields to be put into the FieldBundle. There should also be an internal flag that would disallow adding more Fields after a FieldBundle has been packed.
Optimize grid remapping performance for very high resolution grids This task will ensure that grid remapping functions can support very high resolution grids (<1/10 degree global).
Higher order conservative regridding After bilinear, first order conservative.
Support memory topologies with accelerators for distributed data classes Explore extending the ESMF distributed data classes (Array and Field) to become aware of the memory topology introduced by the accelerator hardware. Prototype the efficient interaction between data that is distributed differently and located in or out of device memory, minimizing expensive data movements. Handling this issue efficiently is also important for the performance of inter-component coupling.
Components and VM support for hybrid MPI applications on MIC architecture Investigate how components can support running distributed data objects that are distributed on more MPI tasks than the component itself. This is geared toward the MPI use on the MIC architecture, where it may be efficient to have a more fine-grained distribution of some data structures (considering memory limitations), while keeping other data structures, and the general control structure on a more coarse-grained distribution provided by the traditional CPU cores of the computer system.
FieldWrite, GridWrite, and MeshWrite to write out object metadata So that FieldCreate (from file), GridCreate (from file) and MeshCreate (from file)work with that file. All to be based on a common I/O layer on top of PIO.
Extrapolation of data points that lie outside the source Regrid to provide nearest neighbor extrapolation of points which lie outside the unmasked source grid.
Dynamic masking during SMM execution Support for dynamic masking of srcArray elements during ASMM executionImplementation of this feature requires rework of some of the ASMM implementation code, down inside of XXE.
Support for additional SCRIP weight file format, also streamlined weight file format Currently ESMF only supports one SCRIP weight file format. It would be good to add the other one which the Met Office (and I think other OASIS users) use. In addition, it would be good to add a weight file which doesn't have all the extra information (Grids, etc.) and which has more sensibly named variables (e.g. src_index, weight_matrix instead of S...)
Refactor MAPL and ESMF to reduce redundancy Look into refactoring MAPL and to reduce redundancies with ESMF and the NUOPC Layer.
Define MAPL-NUOPC translation strategy Define MAPL-NUOPC translation strategy
Support for rotated pole grid regridding We have an user requesting rotated pole grid regridding capability in ESMPy (#3613671) and we also have users from MetOffice asking about the support for rotated pole grids. So, it will be a good idea to add this capability to ESMF_RegridWeightGen application and the ESMF_GridCreate() API to read in the rotated grid coordinates from a CF convention NetCDF file and convert it into the lat/lon grid.


 ESMF v7.2.0

Task Description
Convert other interpolation methods to MOAB Part of the MOAB conversion.
Convert other Mesh functionality to MOAB Part of the MOAB conversion.
Higher-order element representation Add support for observational data streams (LocStream) to ESMPy. This will need to be added to the C interface first. Also, the regridding to/from Grids/Meshes should be added and tested for full support. Eric Hutton wanted to use this capability to represent point clouds and do regridding with them.
Regrid of data on Mesh edge locations The idea is to let the user regrid data which is on mesh edges. This should eventually be available in both the offline and online regridding, and for conservative and non-conservative. Probably the easiest way to do this right now is to create a new mesh from the edge one which has the data at nodes (for non-conservative) or cell centers (for conservative). (like a dual-mesh, but different). For the online regridding we probably need to be able to build Fields on Mesh edges, see ticket # 3371542.
Data on edge locations for Mesh To do this we need to be able to figure out how many edges are on each PET and build a distgrid from them, it appears the capability to have edges is already in the low level Mesh, but will need to test it and see if it provides everything, so there is some uncertainty in the time estimate. This is probably a necessary precondition for doing online regridding of edge data.


Last Update: Feb. 11, 2015, 12:49 p.m. by deleted user