CreateIdentityMcePart marks depthwise convolutions as channel selectors
Hello @AndrzejKurek,
In CreateIdentityMcePart, the part is set as a DEPTHWISE_CONVOLUTION
https://github.com/ARM-software/ethos-n-driver-stack/blob/6834c826022ce0cc9c9f9569865336088a553b87/driver/support_library/src/NetworkToGraphOfPartsConverter.cpp#L57
but at the same time the part is not explicitly setting the m_IsChannelSelector as false, but instead conditioned based on QuantInfo.
https://github.com/ARM-software/ethos-n-driver-stack/blob/6834c826022ce0cc9c9f9569865336088a553b87/driver/support_library/src/NetworkToGraphOfPartsConverter.cpp#L65
This leads to the case of m_IsChannelSelector for the part to be True when inputQuantInfo == outputQuantInfo.
This is contraditory to other ops in NetworkToGraphOfPartsConverter that are set as a DEPTHWISE_CONVOLUTION, as they explicitly set m_IsChannelSelector = False or inherit from ConstructionParams. Is this intended?
This discrepancy leads to an assertion error for my usecase at the following: https://github.com/ARM-software/ethos-n-driver-stack/blob/6834c826022ce0cc9c9f9569865336088a553b87/driver/support_library/src/McePart.cpp#L890
This assertion error was raised when the channel selector before is a DEPTHWISE_CONVOLUTION part with weights in HWIM form, but is set as m_IsChannelSelector=True because of the above, and hence the dimensions do not match.