denniskb / spice2

The Spice SNN Simulator
Other
6 stars 0 forks source link

Handle per-neuron&synapse initialization #10

Closed denniskb closed 2 years ago

denniskb commented 2 years ago

Get together with Nikos and find out what meta data he needs in order to properly initialize.

denniskb commented 2 years ago

Provide all meta data that could be useful, including things such as populations and neuron IDs (i.e. CUDA launch configs), etc. Potentially package all of it in an sim_info struct or the like to avoid blowing up function signatures. The use case that should be supported is easily creating an input layer that generates its spikes from an (image) file.

Also, consider initializing neurons and synapses with a generator to, i.e., avoid re-reading/scanning a file thousands of times.

Lastly, consider adding convenience classes. However, these should be written on top of the public API. The API itself should be expressive enough to easily implement this.

denniskb commented 2 years ago

One idea would be to implement an adapter class that allows the user to define an entire neuron population rather than an individual neuron and output lists of spikes (potentially using a stream once again). This would allow the user to pull in multiple files inside their update() method without the need for re-wiring SNNs. We'll have to see how it interacts with multi-threading though...