aboutsummaryrefslogtreecommitdiff
path: root/ethosu/vela/pass_packing.py
diff options
context:
space:
mode:
authorJacob Bohlin <jacob.bohlin@arm.com>2020-07-13 16:01:51 +0200
committerJacob Bohlin <jacob.bohlin@arm.com>2020-08-10 15:49:40 +0200
commite99b893beaa1b95ee86d51a613f208f9f4edf150 (patch)
treeb17720ae711a5f638f0fc7145f886d73e67bdf46 /ethosu/vela/pass_packing.py
parentecd2052d8106bc81a866f4d80ed5906d99437eec (diff)
downloadethos-u-vela-e99b893beaa1b95ee86d51a613f208f9f4edf150.tar.gz
MLBEDSW-2639: Moved the IFM/IFM2 order switch to register cmd stream generator
For binary elementwise ops with broadcasting in first IFM. Signed-off-by: Jacob Bohlin <jacob.bohlin@arm.com> Change-Id: I25af67be8d3a852247989bc3ddc8e08e946f6bfa
Diffstat (limited to 'ethosu/vela/pass_packing.py')
-rw-r--r--ethosu/vela/pass_packing.py19
1 files changed, 0 insertions, 19 deletions
diff --git a/ethosu/vela/pass_packing.py b/ethosu/vela/pass_packing.py
index 8fb95f03..fab00e00 100644
--- a/ethosu/vela/pass_packing.py
+++ b/ethosu/vela/pass_packing.py
@@ -259,20 +259,6 @@ def pack_into_passes(nng, arch, verbose_packing=False):
ofm_tensor = op.outputs[0]
build_pass((op,), ofm_tensor)
- def broadcast_input_check(ps):
- if len(ps.inputs) == 1 or ps.inputs[0].shape == ps.inputs[1].shape:
- return
-
- if ps.inputs[0].shape == [] or ps.inputs[1].shape == []:
- return
-
- for idx in range(len(ps.inputs[1].shape)):
- if ps.inputs[1].shape[idx] != ps.inputs[0].shape[idx] and ps.inputs[0].shape[idx] != 1:
- return
-
- ps.inputs[0], ps.inputs[1] = ps.inputs[1], ps.inputs[0]
- ps.primary_op.inputs[0], ps.primary_op.inputs[1] = ps.primary_op.inputs[1], ps.primary_op.inputs[0]
-
def build_pass(start_ops_to_process, ofm_tensor=None):
reverse_ops_list = []
curr_flags = PassFlags.Empty
@@ -413,14 +399,9 @@ def pack_into_passes(nng, arch, verbose_packing=False):
ps.inputs = ordered_input_list
ps.intermediates = intermediates
ps.outputs = list(ops_list[-1].outputs)
- ps.ifm_tensor = ifm_tensor
# ElementWise operation, 2 IFMs
if ps.primary_op and ps.primary_op.type in binary_elem_wise_main_ops:
- # Swap broadcast input if applicable
- broadcast_input_check(ps)
-
- # If only 1 input, IFM and IFM2 will be the same tensor
ps.ifm_tensor = ps.inputs[0]
ps.ifm2_tensor = ps.inputs[-1]