diff options
Diffstat (limited to 'src/armnn/Network.cpp')
-rw-r--r-- | src/armnn/Network.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/armnn/Network.cpp b/src/armnn/Network.cpp index 132924a19a..94a9961a81 100644 --- a/src/armnn/Network.cpp +++ b/src/armnn/Network.cpp @@ -912,7 +912,15 @@ EdgeStrategy CalculateEdgeStrategy(BackendsMap& backends, if ((dstFactory->GetImportFlags() & srcFactory->GetExportFlags()) != 0) { - return EdgeStrategy::ExportToTarget; + auto srcCapability = srcFactory->GetCapabilities(&layer, &layer, CapabilityClass::PaddingRequired); + auto dstCapability = dstFactory->GetCapabilities(&connectedLayer, + &connectedLayer, + CapabilityClass::PaddingRequired); + // Do not require memory copy if the source and destination do not require padding. + if (srcCapability.empty() && dstCapability.empty()) + { + return EdgeStrategy::ExportToTarget; + } } } } |