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

import NEST_SYNAPSE_TYPES from nest.__init__.py #306

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mschmidt87
Copy link
Contributor

The variable NEST_SYNAPSE_TYPES is defined once and then used by pyNN.nest.standardmodels.synapses._get_nest_synapse_model to check for available synapse types in NEST. Before, the function called nest.Models(mtype='synapses') at every function call, which slowed down things a lot, especially in the case of many single projections.

@apdavison
Copy link
Member

According to Yury, in #228, NEST_SYNAPSE_TYPES needs to be re-initialised after nest.ResetKernel(), so defining it only once will not work. Perhaps move the variable into the State class?

@mschmidt87
Copy link
Contributor Author

Hi, yes that's of course an important concern.
Thus, we have to re-initialize NEST_SYNAPSE_TYPES after each nest.ResetKernel.
With "moving into the State class", do you mean setting NEST_SYNAPSE_TYPES in State.clear(), where nest.ResetKernel() is called?

However, I think we cannot circumvent the problem if the user explicitely calls nest.ResetKernel() via pyNEST.

Another point is that the list has to be updated after each new synapse model definition. Is this only done in nest/synapses.py and nest/standardmodels/synapses.py, i.e. at every creation of a connection?

@jougs jougs changed the title impoer NEST_SYNAPSE_TYPES from nest.__init__.py import NEST_SYNAPSE_TYPES from nest.__init__.py May 15, 2014
@apdavison apdavison added the NEST label Dec 8, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants