How the threads communicate?

General issues of interest both for network and
individual cell parallelization.

Moderator: hines

Post Reply
gregw

How the threads communicate?

Post by gregw »

Suppose I have 2 neurons running in separate threads (on separate processors). Let them be connected by a single synapse via NetCon object. How the synchronization between these two threads is implemented? If these two neurons are simulated in parallel on separate processors their simulation time may be different at the time when the synapse firies. For example if this time is 105 ms for the Presynaptic neuron, it may be 103 ms or 108 ms for the Postsynaptic neuron.

I can imagine this synchronization to work like that:

1. When a spike occurs in the Presynaptic neuron at time for example 105 ms , the simulation of this neuron is stopped.
2. If the Postynaptic neuron simulation time is for example 103 ms, then the Postsynaptic neuron is allowed to be simulated until 105 ms. If the Postynaptic neuron simulation time is for example 108 ms, then the Postsynaptic neuron simulation time is rolled back to 105 ms.
3. After the simulation times are adjusted as in (2), the synapse firies and the both neurons start running independently again. Until the next spike of the Presynaptic neuron.

Is this the case in NEURON? If not, then how it is actually implemented?
ted
Site Admin
Posts: 6289
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: How the threads communicate?

Post by ted »

Have you read
Migliore, M, Cannia, C., Lytton, W.W., Markram, H. and Hines, M.L.
Parallel network simulations with NEURON.
Journal of Computational Neuroscience 21:119-129, 2006
?
This and several other key articles are available from http://www.neuron.yale.edu/neuron/nrnpubs
Post Reply