Information Technology Reference
In-Depth Information
8.2.2 Parallelization on cluster-level
As illustrated in Figure 8.1, cluster-level parallelization refers to the
execution of a simulation engine on multiple computing nodes. Major
reasons for cluster-level parallelization are:
Performance
Employing cluster-level parallelization may be the only way to
achieve performance speedups which are impossible to realize on a
single computing node.
Memory and model size
Considering fairly large models, a single computing node may not
have the required amount of memory necessary for executing a
model. By splitting up a model and distributing it to multiple
nodes, even very large models may be handled.
Compared to node- and processor-level parallelization, the main dif-
ferences are the limitations imposed by network connections between
the nodes. This includes lower bandwidth, reduced speed, increased
latency and response times as well as the fact that network commu-
nication between nodes can not be assumed to be reliable.
A simulation engine realizing cluster-level parallelization may be
implemented in various ways, e.g., with a central control node or in a
completely decentralized manner.
8.2.3 Multi-level parallelization
Multi-level parallelization refers to the simultaneous use of node-
and processor level parallelization and cluster-level parallelization.
First, a simulation engine may use multiple nodes; thus the model is
partitioned accordingly. Second, for each node a simulation engine may
further parallelize execution and use multiple processors and threads.
Obviously, model partitioning and parallelization of a simulation
engine are tightly related and have to go hand in hand.
Search WWH ::




Custom Search