You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The length of SIMD registers in arm devices is 128-bit, and an element is only 1-bit in BNNs, so only the case that the number of channels is 64 or a multiple of 128 is currently supported. It covers some popular networks, like ResNet, while other networks, unfortunately, cannot be deployed on dabnn.
A possible solution is to unify these unsupported cases into BGEMM:
Pad on the channel dimension of weight when reading the model so that the channel of weight is a multiple of 128.
When generating the image mat by im2col, pad the mat so that the number of rows is a multiple of 128.
Since there is no way to perform zero-pad in BNNs, the padded elements will change the result of BGEMM. Correct the result in the following affine layer.
The text was updated successfully, but these errors were encountered:
Related issue: #23
The length of SIMD registers in arm devices is 128-bit, and an element is only 1-bit in BNNs, so only the case that the number of channels is 64 or a multiple of 128 is currently supported. It covers some popular networks, like ResNet, while other networks, unfortunately, cannot be deployed on dabnn.
A possible solution is to unify these unsupported cases into BGEMM:
The text was updated successfully, but these errors were encountered: