Auryn simulator  v0.8.1-206-gb56e451
Plastic Spiking Neural Network Simulator
Classes | Namespaces | Macros
SyncBuffer.h File Reference
#include "auryn_definitions.h"
#include "SpikeDelay.h"
#include <vector>
#include <algorithm>
#include <boost/mpi.hpp>
#include <mpi.h>
Include dependency graph for SyncBuffer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  auryn::SyncBuffer
 Buffer object to capsulate native MPI_Allgather for SpikingGroups. More...
 

Namespaces

 auryn
 

Macros

#define SYNCBUFFER_SIZE_MARGIN_MULTIPLIER   5
 Safety margin for receive buffer size – a value of 3 should make overflows rare in AI state. More...
 
#define SYNCBUFFER_SIZE_HIST_LEN   512
 Accumulate history over this number of timesteps before updating the sendbuffer size in the absence of overflows. More...
 
#define SYNCBUFFER_DELTA_DATATYPE   NeuronID
 Datatype used for delta computation should be a "long" for large nets with sparse activity otherwise NeuronID. More...
 

Macro Definition Documentation

◆ SYNCBUFFER_DELTA_DATATYPE

#define SYNCBUFFER_DELTA_DATATYPE   NeuronID

Datatype used for delta computation should be a "long" for large nets with sparse activity otherwise NeuronID.

To strictly guarnatee flawless function this datatype needs to be larger than max(NeuronID)*MINDELAY to avoid an overflow and undefined behavior.

◆ SYNCBUFFER_SIZE_HIST_LEN

#define SYNCBUFFER_SIZE_HIST_LEN   512

Accumulate history over this number of timesteps before updating the sendbuffer size in the absence of overflows.

◆ SYNCBUFFER_SIZE_MARGIN_MULTIPLIER

#define SYNCBUFFER_SIZE_MARGIN_MULTIPLIER   5

Safety margin for receive buffer size – a value of 3 should make overflows rare in AI state.