ISAllGather

Given an index set (IS) on each processor, generates a large index set (same on each processor) by concatenating together each processors index set.

Synopsis

#include "sys.h" 
#include "is.h"  
int ISAllGather(IS is,IS *isout)
Collective on IS

Input Parameter

is -the distributed index set

Output Parameter

isout -the concatenated index set (same on all processors)

Notes

ISAllGather() is clearly not scalable for large index sets.

The IS created on each processor must be created with a common communicator (e.g., PETSC_COMM_WORLD). If the index sets were created with PETSC_COMM_SELF, this routine will not work as expected, since each process will generate its own new IS that consists only of itself.

Keywords

IS, index set, gather

See Also

ISCreateGeneral(), ISCreateStride(), ISCreateBlock()

Level:intermediate
Location:src/vec/is/utils/iscoloring.c
Index Set
Table of Contents