N2S3 is an event based simulator for Spiking Neural Networks. N2S3's event-based nature means basically that it does not implement internally a clock to resolve how events are resolved. N2S3 uses instead a message-based synchronization approach: a simulation may have one or several synchronizers objects that take care of sending the messages in the correct order.
In N2S3's actor architecture, a Synchronizer takes place as an actor. The typical case, used currently in N2S3 is that all messages are synchronized, to guarantee the causality of the simulation. This decision has the following consequences:
This synchronization strategy is a clear bottleneck if a single synchronizer is used for a large network. Moreover, networks with a feed-forward topology may require less synchronization checks during simulation because the model itself already guarantees message causality.
We have under development to explore several synchronization alternatives: