Using Nengo_DL together with Nengo_Spinnaker

Hello,

I am trying to use Nengo in order to convert a ANN → SNN and then running this SNN on a SpiNNaker machine.

In order to convert the ANN → SNN I need the Nengo_DL package, while the nengo_spinnaker package takes care of running the SNN on the spinnaker machine.

Nengo_DL and Nengo_SpiNNaker seem to be incompatible since Nengo_DL requires Nengo version >= 3.0.0 while Nengo_Spinnaker requires Nengo version 2.2.0.

Is there a workaround to this?

Thanks for your help!
Antonio

Hmmm. It will be a little tricky, considering that the NengoSpinnaker package is quite old and not actively maintained. You can attempt to solve this conflict by installing the following package versions:
nengo==2.2.0
nengo_dl==2.1.1
tensorflow==1.15

I’m not 100% sure this will work though, as there may be unforeseen complications, especially with the TensorFlow version.
I do know that Nvidia maintains their own TensorFlow 1.15 builds that work better with modern GPUs.

Hi,

thanks for your quick reply!

I tried installing the specific package versions but I noticed that the respective versions you mentioned are not compatible. Installing the versions you mentioned raises a ValueError from the Nengo_DL version.py .

Instead I used the following packages and there are no conflicts:

nengo==2.7.0
nengo_dl==1.0.0
nengo_spinnaker==0.4.0

I am currently using

tensorflow==2.5.0

I will let you know if this works!

Thanks and Best,
Antonio

I’m pretty sure TensorFlow 2.5.0 would not work with NengoDL 1.0.0 since NengoDL 1.0.0 was written before TF 2 was even conceived. But, you can still give it a shot to see if it works. :smiley: