iCGY96 / syops-counter

SyOPs counter for spiking neural networks
MIT License
47 stars 7 forks source link

Is there any probability to develop syops for spikingjelly>=0.0.0.13? Thanks! #6

Open AndyCao1125 opened 1 year ago

iCGY96 commented 1 year ago

We are working on upgrading the syops-counter to be compatible with spikingjelly>=0.0.0.13. We appreciate your patience and interest in our project.

NneurotransmitterR commented 4 months ago

Hi! The README says SyOPs requires SpikingJelly <= 0.0.0.0.12, I notice that in SpikingJelly <= 0.0.0.0.12 spikingjelly.activation_based is called spikingjelly.clock_driven but in the example spikingjelly.activation_based is used. I think that is somewhat confusing and I hope you can clarify it. Thanks.

Taotaonoangry commented 4 months ago

Hi! The README says SyOPs requires SpikingJelly <= 0.0.0.0.12, I notice that in SpikingJelly <= 0.0.0.0.12 spikingjelly.activation_based is called spikingjelly.clock_driven but in the example spikingjelly.activation_based is used. I think that is somewhat confusing and I hope you can clarify it. Thanks.

Same question, have you solved yet?

NneurotransmitterR commented 4 months ago

I just used spikingjelly.clock_driven instead. In their source code:

try:
    from spikingjelly.clock_driven.neuron import MultiStepIFNode, MultiStepLIFNode, IFNode, LIFNode, MultiStepParametricLIFNode, ParametricLIFNode
except:
    from spikingjelly.activation_based.neuron import MultiStepIFNode, MultiStepLIFNode, IFNode, LIFNode, MultiStepParametricLIFNode, ParametricLIFNode

I think the developers were to make SyOPs compatible with higher versions of SpikingJelly but for some reason they haven't implemented it. In SpikingJelly >= 0.0.0.0.14 the multi-step node classes don't exist any more, so SyOPs must be rewritten to be compatible with SJ's multi-step mode.