Information Technology Reference
In-Depth Information
parallelization level (cluster-level, node- and processor-level) are de-
scribed in detail in the following subsections.
8.2.1 Parallelization on node- and processor-level
Parallelizing the execution of an agent-based simulation on node- and
processor level refers to the multi-threaded execution of a simulation
engine. As illustrated in Figure 8.1 node- and processor-level parallel-
ization includes the usage of multiple processors within one computing
node as well as exploiting multiple cores within a processor. Compared
to a simulation engine running on multiple nodes, parallelization on
node- and processor-level has a lot in common:
Intra-node and intra-processor communication is orders of mag-
nitudes faster than inter-node communication, which usually in-
volves network connections. Besides pure bandwidth also latency
and response times of intra-node and intra-processor communication
are much smaller when compared to network connections.
Intra-node and intra-processor communication is highly reliable.
In contrast to network connections, there is no need to consider
unreliable or unstable communication. Thus, sophisticated mech-
anisms and protocols to ensure integrity of communication are not
necessary.
Considering parallelization on node- and processor-level, a simula-
tion engine (and all its threads) act on a single memory. Therefore,
all communication and synchronization is handled via this shared
memory.
With these properties in mind, the main challenge for parallelization
on node- and processor-level is to devise synchronization strategies
which ensure correctness, integrity and causality of a simulation and
permit substantial parallel execution to achieve good speedup.
Search WWH ::




Custom Search