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

Implement possibility to choose number of bytes for each connection and number of bits for their integer parameters #89

Open
golosio opened this issue Oct 23, 2023 · 0 comments
Assignees

Comments

@golosio
Copy link
Collaborator

golosio commented Oct 23, 2023

Implement possibility to choose between at least two possibilities for the number of bytes used for each connection (excluding structures for non-static connections): either 12 bytes or 16 bytes per connection. Implement possibility to choose number of bits for node indexes, receptor ports, synaptic type, delay, wth SetKernelStatus command.
In the 12 bytes solution, source node index and delay are compressed in 4 bytes, target node index, receptor port and synaptic group are compressed in other 4 bytes, weight is a 32 bit (4 bytes) floating point number.
In the 16 bytes solution, source node index is a 4 byte integer, delay and receptor port (or synaptic group) are compressed in 4 bytes, target node index and synaptic group (or receptor port) are compressed in 4 bytes, weight is a 32 bit (4 bytes) floating point number. In any case, connection related functions use templates, which should compress/extract the parameters in a proper way depending on the selected representation. Implement possibility to remove the source node index (together with the delay for the 12-bytes solution) in the calibration method after the connections are properly organized, in order to recover some GPU memory to be used for other structures. Note that if source node index (and eventually delay) are removed, it will not be possible to get the connection statuses after calibration.

@golosio golosio self-assigned this Oct 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant