Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added information on spike exchange to documentation #612

Merged
merged 3 commits into from Jan 7, 2017

Conversation

@heplesser
Copy link
Contributor

@heplesser heplesser commented Jan 2, 2017

Following @jougs' suggstion, this PR adds some information on spike exchange to the parallel simulation documentation. @steffengraber Can you make sure this becomes visible on the homepage once it is merged (I guess this happens automatically now?).

…T user 31 Oct 2016.
Copy link
Contributor

@jougs jougs left a comment

I've reformulated your sentences to disentangle them. Can you please check if they still carry the message you intended and merge mine with yours? Thanks!

@@ -81,6 +81,24 @@ spike files and `dat` for analog recordings from the `multimeter`.
The `label` and `file_extension` of a recording device can be set like any other
parameter of a node using `SetStatus`.

### Spike exchange and synapse updates

This comment has been minimized.

@jougs

jougs Jan 4, 2017
Contributor

Add something like "Spike exchange in NEST takes different routes depending on the type of the sending and receiving node. There are two distinct cases.


For spikes between neurons, spikes are always exchanged through the global
spike exchange mechanism and it is then the thread responsible for the target
neuron that updates the synapse and delivers the spike.

This comment has been minimized.

@jougs

jougs Jan 4, 2017
Contributor

"Spikes between neurons are always exchanged through the global spike exchange mechanism. Neuron update and spike generation in the source neuron and event delivery to the target neuron are handled by possibly different threads in this case, depending on the thread, which the neuron is assigned to (see property thread in the status dictionary)".

exchange mechanism. In this case, pre- and postsynaptic node (sender and
target) are handled by the same thread. Similarly, when a neuron emits a spike,
the spike is locally transmitted to the clone of the spike_detector belonging
to the same thread as the neuron.

This comment has been minimized.

@jougs

jougs Jan 4, 2017
Contributor

"Spike exchange to or from neurons over connections that either originate or terminate at a device (e.g. spike_generator->neuron, or neuron->spike_detector) differs in that it bypasses the global spike exchange mechanism. Instead, spikes are delivered thread-locally from or to a replica of the device. In this case, both the pre- and postsynaptic nodes are handled by the thread to which the neuron is assigned to."

to the same thread as the neuron.

Thus, it is always the thread of the target of a connection that is
responsible for the synapse.

This comment has been minimized.

@jougs

jougs Jan 4, 2017
Contributor

"Possible synapse dynamics in the Connection object are always handled by the thread of the target node."

@heplesser
Copy link
Contributor Author

@heplesser heplesser commented Jan 5, 2017

@jougs Thank you for your suggestions! I have integrated them with minor edits. Mainly, I switched from threads to virtual processes, since the user shouldn't really care only about those.

Copy link
Collaborator

@steffengraber steffengraber left a comment

👍 For me everything's ok and could be merged into the website.

Copy link
Contributor

@jougs jougs left a comment

I like the new version very much, especially that threads are not mentioned explicitly. One little type and it's good to go.

the *target* neuron is assigned (see property `vp` in the status dictionary).

Spike exchange to or from neurons over connections that either originate or
terminate at a device (e.g., `spike_generator -> neuron` or `neuron -> spike_detector)

This comment has been minimized.

@jougs

jougs Jan 6, 2017
Contributor

missing closing back tick at end of line before parenthesis.

@jougs
jougs approved these changes Jan 7, 2017
@jougs jougs merged commit 09f8e23 into nest:master Jan 7, 2017
1 check passed
1 check passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@heplesser heplesser deleted the heplesser:spike-exchange-doc branch Mar 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.