About ESMF Download Users Developers Management Work Plans Metrics Impacts Conventions

Array Sparse Matrix Multiply System Test Description

Test Description: This test provides preliminary testing of the sparse matrix multipy capability between two gridded components (GridComps). The first GridComp runs on 4 PETs and defines a 2D source Array of dimensions 100x150. The second GridComp defines a destination Array that is also 100x150 but runs on only 2 PETs. Both GridComps use DELayouts with 1 DE per PET. The decomposition of the source Array is defined as (petCount x 1) = (4 x 1) while the destination Array is decomposed as (1 x petCount) = (1 x 2). The first component initializes the source Array to a geometric function:

   10.0 + 5.0*sin((I/Imax)*pi) + 2.0*sin((J/Jmax)*pi)

The coupler component (CplComp) runs on all 6 PETs and reconciles import and export states which contain source and destination Arrays, respectively. The CplComp then calls ESMF_ArraySMM() using the identity matrix. This amounts to a redistribution of the source Array data onto the destination Array. Finally the second GridComp compares the data stored in the destination Array to the exact solution of the above function as a measure of the correctness of the ESMF_ArraySMM() method.

Test Results

Test Configuration


The main program of the test application consists of the following sections.