AOCreateMemoryScalable#

Creates a memory scalable application ordering using two integer arrays.

Synopsis#

#include "petscao.h"   
PetscErrorCode AOCreateMemoryScalable(MPI_Comm comm, PetscInt napp, const PetscInt myapp[], const PetscInt mypetsc[], AO *aoout)

Collective

Input Parameters#

  • comm - MPI communicator that is to share the AO

  • napp - size of myapp and mypetsc

  • myapp - integer array that defines an ordering

  • mypetsc - integer array that defines another ordering (may be NULL to indicate the natural ordering, that is 0,1,2,3,…)

Output Parameter#

  • aoout - the new application ordering

Note#

The arrays myapp and mypetsc must contain the all the integers 0 to napp-1 with no duplicates; that is there cannot be any “holes” in the indices. Use AOCreateMapping() or AOCreateMappingIS() if you wish to have “holes” in the indices. Comparing with AOCreateBasic(), this routine trades memory with message communication.

See Also#

Application Orderings, Low-level Vector Communication, AO, AOCreateMemoryScalableIS(), AODestroy(), AOPetscToApplication(), AOApplicationToPetsc()

Level#

beginner

Location#

src/vec/is/ao/impls/memscalable/aomemscalable.c


Index of all AO routines
Table of Contents for all manual pages
Index of all manual pages