Comparison of Consistency-AlgorithmsWe ran the two most common consistency algorithms (loose and optimistic) under comparable network conditions (i.e. the same latency/lossrate and similar bandwidth). We also compared this to ideal conditions (the non-distributed case).
|message delay [ms]||250||250||0|
|message loss [%]||0.1||0.1||0|
|packets sent [/s]||20.5||20.5||N/A|
|AVI (Lagarith)||loose.avi||opt.avi||ideal.avi||codec: Lagarith|
|GIF animation||loose.gif||opt.gif||ideal.gif||CAUTION: Attempt only if your PC has > 2GB of RAM!|
What you are looking atThe streams are actually superpositions of three views of the game from three of the hosts. When the three views on the position of a particular bee coincide the result is a maroon ball for that bee. When the views differ, one edge will be colored differently. The honey-gathered numbers at the bottom are printed for each view.
Noteworthy momentsWatch for some noticable faux pass in the loose simulation around the times 63.25 s, 184.30 s, and 275.00 s.
AnalysisWe should stress that the game is set at a fairly low speed (as compared to the characteristic distances of bees from one another divided by the network delay time). Similarly, the network rate is somewhat high, enabling good connectivity between the hosts. The interesting point here is that even at these low speeds and good connectivity, loose consistency fails to get the correct result for the system, there are already some major errors and jumps.
Optimistic consistency, however, performs acceptably well as compared to ideal consistency.