Synopsis

#include <IceT.h>

void icetDataReplicationGroup( IceTInt size,
const IceTInt * processes );

Description

IceT has the ability to take advantage of geometric data that is replicated among processes. If a group of processes share the same geometry data, then IceT will split the region of the display that the data projects onto among the processes, thereby reducing the total amount of image composition work that needs to be done.

Each group can be declared by calling icetDataReplicationGroup and defining the group of processes that share the geometry with the local process. size indicates how many processes belong to the group, and processes is an array of ids of processes that belong to the group. Each process that belongs to a particular group must call icetDataReplicationGroup with the exact same list of processes in the same order.

You can alternately use icetDataReplicationGroupColor to select data replication groups.

By default, each process belongs to a group of size one containing just the local processes (i.e. there is no data replication).

Errors

ICET_INVALID_VALUE

processes does not contain the local process rank.

Warnings

None.

Bugs

IceT assumes that icetDataReplicationGroup is called with the exact same parameters on all processes belonging to a given group. Likewise, IceT also assumes that all processes have called icetBoundingVertices or icetBoundingBox with the exact same parameters on all processes belonging to a given group. These requirements are not strictly enforced, but failing to do so may cause some of the geometry to not be rendered.

Copyright

Copyright (C)2003 Sandia Corporation

Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software.

This source code is released under the New BSD License.

See Also