Summary
The submitted manuscript proposed a method to speedup simulations of adaptive leaky integrate-and-fire (ALIF) neurons on a GPU by using the fact that during the absolutely refractory period ARP, neurons don't exchange any information and thus "blocks" on dt/ARP can be parallelized on GPU. This approach is then used to both train ALIF neurons on typical machine learning tasks and to fit individual ALIF neuron parameters to experimentally measured membrane potentials/currents/spike trains from the Allen Institute, with demonstrate a speedup achieved by the algorithm.
Overall, the submission is well-written and the numerical experiments seem to be executed with due diligence. Unfortunately, no code is provided, which makes the claims and simulations not reproducible.
The core idea to parallelize the time of the ARP is not new and has been used by other simulators (e.g. the NEST simulator for MPI parallelization as described here: https://nest-simulator.readthedocs.io/en/v2.20.0/guides/running_simulations.html). However, I have not seen it explicitly used for GPU parallelization and training.
While the novelty of the submission seems to be minor, I would still think that it can be a useful contribution to the field once the code is made available and the implementation is benchmarked against existing implementations. Once the code is made available and benchmarks are added, I am willing to improve my score and recommend the paper for publication at NeurIPS.
UPDATE POSTREBUTTAL:
The code is now made available. While the originality of the contribution is somewhat limited, the preliminary benchmarks suggest that it might be a useful contribtion to the spiking network community.
Strengths
* The manuscript is written clearly.
* The manuscript is relevant for both the 'spiking machine learning' community (with the ML tasks) and the neuroscience community with the neuron-fitting examples.
* The implementation might be helpful for the community, as this trick seems not to be widely used yet.
* figure 4.2 is great
Weaknesses
* The core idea seems not to be new: As described above, the idea to parallelize the time of the ARP was used by other simulators (e.g. the NEST simulator for MPI parallelization as described here: https://nest-simulator.readthedocs.io/en/v2.20.0/guides/running_simulations.html). It would be crucial to cite this previous work and/or describe what is new/different here.
* The NEST parallelization seems to scale close to linear, thus the presented manuscript might even be not state of the art.
* For the fitting of neuron models, ALIF is not state of the art (see for example Pozzorini et al. for a more recent benchmark of fitting different neuron models 2015 https://doi.org/10.1371/journal.pcbi.1004275). Currently, the manuscript claims "ALIF neurons have been shown to accurately fit real neural recordings." in line 32, and cites a paper from 2008 that is not state-of-the-art. Please reference a more recent paper and mention the caveat that the ALIF is not state-of-the art for fitting neuronal dynamics.
* The notation O(T) compared to (T/T_R) slightly confusing. It seems to compare quantities with different units (assuming T and T_R have units of time). Does the speedup not also depend on DT? After reading more carefully, I guess what you actually want to claim is that the computational costs scale proportional to T and that during blocks of size T_R/DT no communication between threads has to occur which can lead to a theoretical maximal speedup of min(N_threads,T_R/DT) where is the number of parallel threads of the GPU or CPU.
Minor issues:
fix latex of N^in
Questions
* How does the speedup depend on the number of parallel threads and on dt?
* Put the value of ARF in the caption of Figure 4a. Was it 100 steps, so 10 ms?? How biologically realistic is an ART of 10ms?
* * Figure 4.3 time axis labels missing! Can you put a zoomed-in version in the supplement with finer time-axis so the artifacts introduced by large ART are easier to see?
* Figure 5c: does ETV stand for? Please write in the caption, it is only defined in the supplement.
* figure 5d: What is ETV for Dt=0.05ms? Maybe you have even better performance (and better speedup according to the reasoning above) for smaller dt? ;)
* Why in 5f is blocks better than standard? shouldn't they be the same?
* 5e: What happens for shorter ARP?
Rating
5: Borderline accept: Technically solid paper where reasons to accept outweigh reasons to reject, e.g., limited evaluation. Please use sparingly.
Confidence
4: You are confident in your assessment, but not absolutely certain. It is unlikely, but not impossible, that you did not understand some parts of the submission or that you are unfamiliar with some pieces of related work.
Limitations
* No code is provided, therefore the numerical results are unfortunately not reproducible. Also, the code will make the submission substantially more useful for the community. If code is provided during the review, I will reconsider my score.
* ALIF is not state-of-the-art (see above).
* using ARP for parallelization speedup is not strictly new (see above)