NAME¶
icetSingleImageStrategy -- set the sub-strategy used to composite the image
for a single tile.
Synopsis¶
#include <IceT.h>
void icetSingleImageStrategy( |
IceTEnum |
strategy ); |
Description¶
The main
IceT algorithms are specially designed to composite data defined
on multiple tiles. Some of these algorithms, namely
ICET_STRATEGY_REDUCE and
ICET_STRATEGY_SEQUENTIAL, operate at
least in part by compositing single images together.
IceT also comes
with multiple separate strategies for performing this single image
compositing, and this can be selected with the
icetSingleImageStrategy
function.
A single image strategy is chosen from one of the following provided enumerated
values:
- ICET_SINGLE_IMAGE_STRATEGY_AUTOMATIC
-
Automatically chooses which single image strategy to use based on the
number of processes participating in the composition.
- ICET_SINGLE_IMAGE_STRATEGY_BSWAP
-
The classic binary swap compositing algorithm. At each phase of the
algorithm, each process partners with another, sends half of its image to
its partner, and receives the opposite half from its partner. The
processes are then partitioned into two groups that each have the same
image part, and the algorithm recurses.
- ICET_SINGLE_IMAGE_STRATEGY_RADIXK
-
The radix-k acompositing algorithm is similar to binary swap except that
groups of processes can be larger than two. Larger groups require more
overall messages but overlap blending and communication. The size of the
groups is indirectly controlled by the ICET_MAGIC_K environment
variable or CMake variable.
- ICET_SINGLE_IMAGE_STRATEGY_TREE
-
At each phase, each process partners with another, and one of the processes
sends its entire image to the other. The algorithm recurses with the group
of processes that received images until only one process has an
image.
By default
IceT sets the single image strategy to
ICET_SINGLE_IMAGE_STRATEGY_AUTOMATIC when a context is created. This is
the single image strategy that will be used if no other is selected.
Errors¶
- ICET_INVALID_ENUM
-
The strategy argument does not represent a valid single image
strategy.
Warnings¶
None.
Bugs¶
None known.
Copyright¶
Copyright (C)2010 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¶
icetDrawFrame(3),
icetGetStrategyName(3)
icetSingleImageStrategy(3)