[LCRC Accounts] Yearly Allocation Request for ESMF
Hello, A yearly allocation for the LCRC cluster has been requested with the following updated information: Submitter/PI: Silverio Vasquez Project Name: ESMF Division: MCS Project title: Earth System Modeling Framework Associated funding: DOD, NASA, NSF, NOAA Other Systems: external: NERSC, NCAR, ORNL, NCSA, NASA, NOAA Science: The Earth System Modeling Framework (ESMF) enables the coupling of model components in high performance Earth system modeling codes. ESMF component interfaces have been implemented in most of the prominent climate and weather codes in the U.S.: CESM, NASA GEOS-5 and ModelE, NOAA NEMS, NRL COAMPS and NavGEM, and the GFDL MOM5 ocean. In general, componentization with ESMF has been implemented at the level of major physical domains, where simulated interactions require inter-component data communications (e.g. atmosphere, ocean). Over the years ESMF has evolved and now can be used in multiple ways: 1) to create interoperable component-based modeling systems; 2) as a source of remapping, time management, metadata handling, and other functions; and 3) as a file-based offline generator of interpolation weights for many different kinds of grids. ESMF grid remapping is also available through a Python interface (ESMPy). New capabilities were added this year as a consequence of feedback we received from the modeling and data communities. Activity continued in areas of the NUOPC Layer, ESMF regridding, and ESMPy, the ESMF Python interface. Project description: The previously released NUOPC Layer reference API was refined to provide a more object-oriented interface that better reflects the NUOPC Driver, Model, Connector, and Mediator concepts. The NUOPC Driver now allows child components to be added dynamically, supporting the implementation of more flexible applications. String labels are consistently used to identify component instances and initialize/run/finalize phases. The introduction of namespaces allows for more control over automatic field pairing, and LocStreams (a geometric type that can be used to represent a set of disconnected points) can now be transferred between components during initialize. The compliance checker has become aware of the component context and produces more useful output. Finally, some of the utility routines previously contained in the NUOPC Layer have moved into ESMF. In the area of ESMF regridding, a new application, ESMF_Regrid, was added. This command-line tool can be used to regrid a data field defined in a UGRID or GRIDSPEC format file to another field defined in a different file. The ESMF_RegridWeightGen application, which precomputes regridding weights, now supports additional options to i) allow non-conservative regridding on cell center locations in the unstructured case, ii) ignore degenerate cells, and iii) choose between different line options when regridding on a sphere. The ESMF regridding implementation now supports an option for using a first order conservative method for unstructured Meshes built on DOE's MOAB mesh library (the version built on ESMF's native mesh library is still available). ESMF unstructured Meshes have been extended to handle elements that consist of more than one polygon to allow the representation of geographically disconnected areas (e.g. the Hawaiian Islands) as a single element. The ESMF regridding capability was further extended to cover i) ESMF LocStreams, ii) first-order conservative regridding of concave quadrilateral cells, iii) non conservative regridding on Mesh elements with more than four sides, and iv) the use of great circle lines when computing 3D bilinear interpolation weights on a sphere. The ESMF Python interface ESMPy has matured and offers more complete coverage of the ESMF Grid, Mesh, and LocStream classes. It also now offers read methods that allow a Field to be filled with data from a NetCDF file. Anaconda packages are now available for easy installation of ESMPy on Linux and Darwin systems. Currently ESMF is regression tested daily on Blues with: -- gfortran with mvapich2, and mpich3 -- intel with mvapich2 and mpich2 -- nag with mpich2, mpich3, and openmpi -- pgi with mvapich2 and mpich3 On the Blues gfortran, benchmark testing is included to detect any unexpected change in the performance of the software. ESMPy is also tested on Blues with mvapich2. ESMPy is the ESMF Python Regridding inteface. ESMPy testing includes building and installing ESMF with NetCDF, building python, running unit tests, examples and regridding from files tests. On Fusion, ESMF is regression tested with: -- g95 with mvapich2 -- gfortran with mvapich2 and mpich2 -- intel mvapich2 mpich2 . The regression test includes: - building the ESMF software and installing it, - building and testing 6 applications, - building and running system tests, examples and unit tests bundled with the software. The entire test suite is run with debug and optimized settings. In addition, two versions of ESMF are regression tested, the head of the development, and a branch based on the last public release where limited development has continued. Industry partnership: Project URL: http://www.earthsystemmodeling.org Current FY Hours Used: undetermined amount New FY Requested allocation: 24000 Q1: 6000 Q2: 6000 Q3: 6000 Q4: 6000 Justification: Storage requirements: Thank You, The LCRC Accounts System
participants (1)
-
accounts@lcrc.anl.gov