next up previous
Next: Scheduler Model Up: Process Model Previous: Local Communication Model

Global Synchronization Model

Each thread is instructed to synchronize with the "master" thread regularly. How often this occurs is a parameter of the simulation.

After the set amount of CPU time, a thread will signal its intent to synchronize with the controlling master thread. After every thread has passed the set amount of CPU time and signaled its intent, synchronization will occur. Note that a single slow thread (e.g. slowed down by excessive paging) can cause the entire parallel job to slow down at synchronization time. Every thread must wait for the slowest thread. This behavior is an important observed phenomena in parallel systems.

When all threads are ready, synchronization is simulated by each thread simultaneously sending a message to one thread deigned the "master" thread. That a thread is the "master" thread holds no special significance to the simulator.

This model is unrealistic in that threads will wait for every other thread before sending their synchronization message. This model will have to be changed in the future.


next up previous
Next: Scheduler Model Up: Process Model Previous: Local Communication Model
John Oleszkiewicz 2004-04-14