diff options
author | Louis Verhaard <louis.verhaard@arm.com> | 2020-11-25 20:58:51 +0100 |
---|---|---|
committer | Louis Verhaard <louis.verhaard@arm.com> | 2020-11-26 08:57:21 +0100 |
commit | c21d1c76b21f337d46990c2c262bda536f15e930 (patch) | |
tree | efba6330962b56850d7b62c5acdec43365c56636 | |
parent | 0dd21c79ac6ef588e23393064d25e402e16cc2dd (diff) | |
download | ethos-u-vela-c21d1c76b21f337d46990c2c262bda536f15e930.tar.gz |
MLBEDSW-3583: Prevent DMA for converted FullyConnected
Do not use DMA for weights of a FullyConnected op that has
been converted to a Conv2D.
Change-Id: Ibf6710c0a1723c8b48c563ca204f274af5ca88ce
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
-rw-r--r-- | ethosu/vela/graph_optimiser.py | 1 | ||||
-rw-r--r-- | ethosu/vela/insert_dma.py | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/ethosu/vela/graph_optimiser.py b/ethosu/vela/graph_optimiser.py index 58899054..85c2b602 100644 --- a/ethosu/vela/graph_optimiser.py +++ b/ethosu/vela/graph_optimiser.py @@ -338,6 +338,7 @@ def convert_batched_fc_to_conv(op, arch, nng): "stride_h": 1, "stride_w": 1, "strides": (1, 1, 1, 1), + "is_converted_fc": True, } prev_op = ifm.ops[0] diff --git a/ethosu/vela/insert_dma.py b/ethosu/vela/insert_dma.py index fc1e7986..f02039cb 100644 --- a/ethosu/vela/insert_dma.py +++ b/ethosu/vela/insert_dma.py @@ -77,7 +77,9 @@ def insert_dma_cmd(op, arch, nng): ): only_vector_product_consumers = True for oper in tens.consumers(): - if oper is None or oper.type.npu_block_type != NpuBlockType.VectorProduct: + if oper is None or not ( + oper.type.npu_block_type == NpuBlockType.VectorProduct or "is_converted_fc" in oper.attrs + ): only_vector_product_consumers = False break |