Closed ben9809 closed 6 months ago
Looks good @ben9809, could you also cover with a test in tests/test_metrics.py
?
Hoping that the memory requirements don't blow up from saving all info under same hook, it should be fine for now since it's just for SNN, but maybe in the future we could use separate hooks.
Could you also add in the docstring of the metric that this metric should only be used with SNNs / also only currently works for SNNTorch?
Sure @jasonlyik!!
Description
This pull request introduces a new performance metric, membrane_updates. This metric counts the number of membrane potential updates within spiking neural networks (SNNs). It tracks these updates across different network neurons.
Motivation
The membrane_updates metric aims to capture membrane potential development over multiple steps by counting stateful operations that, together with the synaptic operations, reflect the actual workload in neuromorphic computing models.
Recent research (https://arxiv.org/pdf/2306.15749v4.pdf) has highlighted the importance of considering stateful operations in the analysis of SNNs.