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: October 2007

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". Tasks required for a release are marked with a **. Tasks with a ^ are expected to come from an outside contribution.


AS BUILT November 2007 ESMF v3.1.0

Task Description
**Performance profiling/optimization of Array sparse matrix multiply including petascale processor counts Evaluate memory, speed and scaling performance of the sparse matrix multiply on large numbers of processors.
**Continued development of basic new Grid Includes improved documentation and additional methods for setting coordinates.
**Implement array redistribution using new Array communications Implement redistribution using new Array communications instead of the old Route. This is necessary for the Stage 2 CCSM evaluation, and is a prerequisite for pulling out the old communications.
**Move Field, Bundle, and Component to new Array and Grid Replace old Grid and Array with new Grid and Array in Field, Bundle, and Component and remove old Grid, Array, and Regrid from public interfaces. This was done for create and a limited number of other methods.
**Array sparse matrix multiply supports undistributed dimensions Complete ESMF_ArraySparseMatMul() implementation to work with Arrays with undistributed dimensions.
**Test, examples, and documentation review for Array Test, examples, and documentation review for basic Array functions.
**Communications consolidation Consolidate old and new communications. None of the old Array and Route communications were retained.
**Implement replicated Arrays to support undistributed dimensions Allow the creation of Arrays on DistGrids where not all DistGrid dimensions are associated with Array dimensions. The Array will be replicated along the un-associated DistGrid dimensions. One immediate application of this feature is that it allows for natural representation of rectilinear grids.
ESMF_ArrayGather() for single patch simple connectivity Grids Implement ESMF_ArrayGather() for single-tile Grids. ESMF_ArrayScatter() was implemented and TKR-overloaded for v3.0.2.
wJET port for NOAA Resolve failures on the NOAA wJET system. Some issues still remain and are noted in known bugs and support tickets, but there is a working port.


Feb 2008 ESMF v3.1.1

Task Description
**Robust general regridding This capability is based on an unstructured 3D grid representation for which there is currently a working prototype. The work here is in interface design, documentation, internal integration, and standardization of behavior. This is an initial implementation and will likely just include bilinear regridding.
**Implement location streams Incorporate the location stream code developed by Will Sawyer into the ESMF source distribution.
**Continue development of structured grids This may include:  1) implement edge connectivities,  2) implement arbitrary distributions, 3) support, documentation, and standardization, 4) methods needed for regrid implementation, 5) restructuring of the Grid class as a result of location streams.
**Restore field and bundle communication methods The first stage of this effort, delivered for v3.1.0, was integrating new Grid and Array into Fields and Bundles for Create/Get/Set. This task is restoring the communication methods.
**Add initial C interfaces for pWASH123 The model pWASH123 is written in C and requires ESMF interfaces for coupling. DoD has provided funds to complete this task.
Tests and examples for ensembles Create example(s) or system test(s) showing how ESMF can be set up to run ensembles.
Method to return whether in Initialize/Run/Finalize and phase For GEOS-5 AGCM. See feature request #1241088.
Parallel mode for sparse matrix multiply This is to support the ROMS group. It will enable the sparse matrix multiply to operate between two components outside of the context of a coupler.
Demonstrate use of test harness with redistribution and regrid Test harness must be complete to the point at which redistribution and regrid tests can be implemented and included in the distribution.
Improved error reporting This task includes the following: 1) Formulate and implement a public API to LogErr that assumes only "use ESMF_Mod" in user code, no special ESMF or other "include"
statements. 2) Propose a standard way of how user code should employ the public LogErr API to handle RCs returned from ESMF calls. 3) Showcase this public API
and its use in the LogErr/examples. 4) Rework the LogErr section in the Reference Manual.
Optimizations to the VM for petascale Performance evaluation of the sparse matrix multiply shows that there are still optimization issues with the VM implementation.
Add VM documentation VM is currently sparse on documentation. This task is to bring this up-to-date.
Reconcile and close old tickets Review all tickets pertinent to 3.1.0 and notify users and close out the tickets.
ESMF_DistGridGet() provides topology information In order to support single patch DistGrids with simple connectivity, e.g. periodicity, the ESMF_DistGridGet() implementation must be advanced to provide the necessary topology information. This task includes the implementation of necessary DistGrid internal data representations.
^Port to Sun Solaris platform Port to the Sun Solaris platform for AFWA.
^Contributed port to NEC Should be contributed by the NEC group.


Feb 2008 ESMF v3.1.0r

May 2008 ESMF v3.1.2

Task Description
**Implement unstructured grid support This task is a placeholder. The unstructured grid support
that is required is currently ill-defined and the time estimate here is uncertain.
**Continue implementation of regrid This is not well-defined. It continues the work started in v3.1.1 on regrid, possibly including 1) additional regrid techniques, and 2) additional modes of execution, such as regrid between concurrently executing components.
**Initial implementation of exchange grids This is not well defined and will require a design cycle.
Use test case for ESMF_StateReconcile() Add new system test(s) to stress ESMF_StateReconcile(). This should include sending large numbers of Fields and nested States.
Test, profile, and documentation review for Array communications Profile performance and provide documentation for Array communications.
Make concurrency more robust It is not yet fully clear what this task involves, so the estimate may be way off. However, it is at minimum: a) removing the fixed buffer size that is currently in use and replacing it with a buffer of calculated size and b) addressing issues concerning initialization that were revealed in intern Array when doing init fixes - the solution may be waiting for intern Array removal.
ESMF_ArrayHalo() for single patch simple conn DistGrids Implement Array halo and ensure that it fixes previous errors.  The most critical of these errors was that the halo used to be declared in all dimensions, whether it was distributed or not.
Test, examples and documentation review for Array halo Test, examples and documentation review for Array halo.
Use test case for ArrayHalo Array halo use test case that stresses the size and configurations of Array.
Continue improved error reporting Check for and implement correct error handling across the system.
Component concept works with MAPL Currently MAPL is based on certain assumptions about the interaction between Components and VM that don't hold in general. In order to allow MAPL to work correctly where components run on different sets of PETs it will be necessary to adjust some of the Component/VM concepts in ESMF. This task will require collaboration with the MAPL developers to ensure full compatibility.
Add ArrayBundle create and sparse matrix multiply methods ArrayBundles may be needed in order to optimize sends of Arrays that are discontinuous in memory but share the same DistGrid.
Performance profiling of Bundles with sparse matrix multiply Profile Array and Field Bundles for redistribution and sparse matrix multiply.


Last Update: June 17, 2015, 2:46 p.m. by Sylvia Murphy