Skip to content

[BUG] NCHW4c is an unsupported convolution layout for arm_cpu #16537

Description

@lhutton1

Expected behaviour:

When compiled with target arm_cpu the model should compile successfully.

Actual behaviour:

The test fails to run and gives the following error:

def conv2d_strategy_arm_cpu(attrs, inputs, out_type, target):
...
    else:
>               raise RuntimeError(f"Unsupported conv2d layout {layout} for arm cpu")
E               RuntimeError: Unsupported conv2d layout NCHW4c for arm cpu

python/tvm/relay/op/strategy/arm_cpu.py:273: RuntimeError

Environment:

Tested with TVM at 6a3fadc. The issue was found as a result of the changes in #16513, however it can be reproduced without as described below.

How to reproduce:

pytest tests/python/relay/test_pass_alter_op_layout.py -k test_alter_layout_nonscalar_broadcast
pytest tests/python/relay/test_pass_alter_op_layout.py -k test_alter_layout_blocked_no_broadcast
pytest tests/python/relay/test_pass_alter_op_layout.py -k test_alter_layout_blocked_broadcast
pytest tests/python/relay/test_pass_alter_op_layout.py -k test_alter_layout_re_blocking_broadcast
pytest tests/python/relay/test_pass_alter_op_layout.py -k test_broadcast_non_adaptable
pytest tests/python/relay/test_pass_alter_op_layout.py -k test_broadcast_respect_input_layouts

Run any of the above tests with an arm_cpu target. Note: Reminder to remove any skip condition that exists in the test currently.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    flow:relayThe overall lowering flow for tvm.relay.build, including BYOC core, excluding tvm.driver.build.needs-triagePRs or issues that need to be investigated by maintainers to find the right assignees to address itstatus:stalePR is stale and not being acted on for a whiletopipython/tvm/topitype: bug

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions