User Tools

Site Tools


simulation_synchronization

Synchronization

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:

  • NetworkEntityActors do not necessarily communicate directly between them: instead, they request the synchronizer to send a message to a destination actor at a given point in time.
  • The synchronizer keeps a queue of messages to send sorted by timestamp. Once all messages of a given timestamp are sent, the synchronizer will start sending the messages in the following timestamp.
  • The chosen simulation model needs to satisfy the simulation causality by guaranteeing that an event in time t1 will generate events for time t2 where t2 >= t1.
  • Timestamps in the simulation are discrete times.

Future Plans

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:

  • Providing synchronizers per neuron, neuron group or network.
  • Desynchronizing part of the network by removing the synchronizer.
  • More optimistic synchronization approaches where the network will make the assumption that by default causality is respected and then recalculate if it was not the case.
simulation_synchronization.txt ยท Last modified: 2016/10/21 15:51 by guillermopolito@gmail.com