In this page the adaptive mechanism implemented by GAIA is shown using some videos. Each video represents a simulation run in which a given number of wireless stations is modelled.
The first video shows the distributed simulation of 9999 mobile wireless hosts using 3 execution units (e.g. CPUs), each unit manages the evolution of 3333 hosts. The initial allocation of the simulated hosts on the execution units is random.
In the left part of the screen it is possible to see the geographical position of each wireless host. Each dot is a mobile wireless host that moves following a random waypoint mobility model. The color of the dots refers to the CPU that is simulating such node (e.g. green dots are wireless hosts running on CPU #0, blue are on CPU #1 and magenta are on CPU #2). The graph on the right shows what percentage of the communication in the distributed execution architecture is local (i.e. inside each execution node). Clearly, higher is better since remote communication is much more costly than local one.
Step-by-step, the adaptive reallocation mechanism analyzes the communication pattern of each wireless host and manages some reallocations of the simulated hosts (i.e. migrations) in the distributed execution architecture. In this way it is possible to cluster interactions, increase the amount of local communication and this often improves the execution efficiency.
In this case the initial allocation of mobile wireless hosts is arranged in stripes. This means that, at least initially, the amount of local communication is quite high. In this case, the role of the adaptive mechanism is to maintain a good clustering of the simulated hosts.
In this case the adaptive mechanism is turned OFF, in a few timesteps the clustering becomes very poor and there is a performance degradation.