The structure of the HDDA/DAGH runtime system is given in the schematic of figure 5.
The HDDA implements a hierarchical dynamic distributed array. ``Hierarchical'' means that each element of an instance of an array can itself be an array. ``Dynamic'' means that the number of levels in the hierarchy of arrays can be varied during execution of the program. ``Distributed'' means that the array may be partitioned across multiple address spaces transparently to C or Fortran programs which operate on these arrays.DAGH is a layer of programming abstractions built upon the HDDA implementing a hierarchy of grids. DAGH is a PDI which implements instantiation of operations on a dynamic hierarchy of nested grids. DAGH supports implementation of a considerable span of AMR and multi-grid solution methods including vertex centered, cell-centered and edge -centered grids. The conceptual framework for design and implementation of this PDI follows.