Partitioning Quality
The partitioning requirements for adaptive applications
depend on the current state of the application and the computing environment.
Rather than the absolute goodness of a particular partitioning technique,
it is proposed to base the characterization of partitioning behavior on
the PAC tuple. The goal is to capture the overall runtime behavior of the
partitioner. The proposed metric for characterizing the quality of a PAC
consists of the following five components:
-
Communication requirement : This component
is a measure of how much the processors have to communicate with each other
until the next repartition. Communication can either be inter or intra
grid.
-
Load imbalance : This component measures the
load imbalance created by a partitioner. It occurs when any processor has
more than average load and can cause performance to quickly deteriorate.
-
Amount of data migration : This is a measure
of the ability of the partitioner to consider the existing distribution.
This is particularly important for SAMR applications as they require re-partitioning
at regular intervals.
-
Partitioning time : This component tells how
fast the partitioning algorithm computes the new partitioning, given the
current partitioning.
-
Partitioning induced overhead : This component
attempts to capture the quality of the partition generated by the partitioner,
using the number of sub-grids and their aspect ratio. Many small grids
and grids with bad aspect ratios give rise to high overheads.
Optimizing all the above components implies conflicting
objectives. For example, optimizing the first two components together constitutes
an NP-hard problem. Partitioners typically optimize a subset of the components
at the expense of others. This five-component metric facilitates the determination
of trade-offs for each partitioning technique.