Is there a way to in advance determine the total synapse usage for a given layer and block shape? I want to assign block shapes intelligently and avoid “Total synapse bits … exceeded max …” errors. Is there a resource that can help me understand how this works?
With dense layers everything makes perfect sense. For example lets say I have a simple network structure I want to port onto loihi:
input = Input(36, 36, 3) output = Dense(4, use_bias = False, activation = "relu")(input) model = Model(input, output)
I know that this model will use
36 * 36 * 3 = 3888 axons and will use
3888 * 4 = 15552 synapses and if each synapse uses 16 bits that would be 248832 synaptic bits which indicates this layer will fit on loihi.
But for convolutional networks when I choose a given block shape I do not know how to predict whether or not it will violate a loihi synaptic bit limit constraint. Is there any resource which explains how this works?