Age | Commit message (Collapse) | Author |
|
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: I4ca8d9196abd0e116d420a36c780e39edbca0eb3
|
|
* enable external memory management for neon and ref backends
* change m_TensorMemoryVector to hold shared pointers
* change input layer backend Id to match backend id of connected layer
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: I2216a724028312eb101b290df3f224177826b1a0
|
|
Change-Id: I474e5e40550d61f873fd930fe33b0e1e9f9992cc
Signed-off-by: Rob Hughes <robert.hughes@arm.com>
|
|
* Added implementation of ClBackendDefaultAllocator
* Added back in some pure virtual functions that were mistakenly removed from the CustomMemoryAllocatorSample
* Added a new Gralloc MemorySource for memory which originates from the gpu
* Added unittests
Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: Id2abb33d82697df36426f5709756c616af3e8ed7
|
|
* add fsrcnn and mobilebert memory profiles to the strategy benchmark
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: Ibd8b26f2153c561e5c5bec477f6246d0e8ffa4af
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ifbb9332c78c843c5b937c4e1b50a8f5a75409e73
|
|
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Iad30ae6ec8b34f880a855da64758b02d067501db
|
|
Change-Id: Ia4bf42b1f3f86b947825dff8e538d2d4343effab
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I7626d5bd82e832d5be6913719a34d76fbd1dbed8
|
|
* Get number of inputs and outputs from optimized network.
* Get number of cached files if backend supports caching.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ie02ac123bb7df9b0593a2fe46b5bb564a5994780
|
|
* Added PaddingMode enum to PaddingDescriptor to enable Symmetric and
Reflect padding.
* Added Symmetric and Reflect Ref implementation.
* Added Serializer & Deserializer support.
* Added unit tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I4bed907b31742b32ccefe5e8ca39a6f1e5bd9dee
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I8b73dccc14ef71cc083896102e24afb2e56e72e2
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3a5bfef5a0085d172fd3689e67f25af909ace2ee
|
|
* Refactor the strategy library to be more generic
* Shorten the names of the current strategies
* Change validatorStrat to throw exceptions
Change-Id: I0d9c9ef609b2d8675e5788610d1accac6767c660
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: Ia41b5252d695daabd5afaf1b2267444d24be173a
|
|
* Occured in Ubuntu Impish
* GCC Bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Ic2b1ae64bb2f1362ec3eb5c2b7a829deee2e9018
|
|
* Add parent LoadedNetwork profiling point
* Make generic populateParent function to print new descendents in json
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I41dc876bffae88e61a16d07fb13b062c321e78a6
|
|
* Constant weights and biases are now stored as Constant layers.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteParser.
* Updated Ref backend to handle constant weights and
bias as inputs rather than reading from member variables.
* Added Conv3d EndToEnd test.
* Added NCDHW DataLayout and unit tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I10cdd354ca5f1c748730f92ffdb36bf810f83c8e
|
|
backends
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: If2879e8a82692285e7fa3f4d09abd608ca28de12
|
|
* Created method in Graph.cpp/hpp ConstructErrorMessageForUnconnectedInputs() to
verify weights and bias are set for FullyConnected layers.
* Above method called in Graph.cpp InferTensorInfos() to print a more descriptive
message when the weights or bias for a FullyConnectedLayer is not set.
* Added try-catch in TestUtils.cpp Connect() to ensure input slot is available
when connecting two layers. This ensures we catch the case where bias is
is not enabled and we try and set a bias layer.
* Added unit tests to check for LayerValidationError when weights or
bias is not set on a FullyConnectedLayer.
* Added unit test to check for LayerValidationError when bias is not
enabled and we try and connect bias to FullyConnected Layer.
* Seperated FullyConnected EndToEnd unit test method into two methods.
First, performs tests on EndToEnd examples asserting output value.
Second, performs tests on error catching.
* Added comments to created methods.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I5207d8c5ebacfff598556742ccd4f53eef7dee0c
|
|
This reverts commit 89fd793e179bf250c6c390c08dc42760343aa21b.
Reason for revert: Issue resolved
Change-Id: I3acba62b553c4e7b739167c8ef4a6abc6936adf8
|
|
* Upgrade doctest to version 2.4.6 to allow Arm NN to build with
glibc 2.34
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Iff2ef286ba5ad0e0ec0f54f510253a2ec4b464d3
|
|
* Add ClearImportedInputs/Outputs function to IRuntime
* Add UnImport function to ITensorHandle
* Remove mutex from IWorkingMemHandle
Change-Id: I34c9b6e1618755e10f3b4597afa1d9a9ea97e5fe
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
|
|
isn't set
* Updated code in Graph.cpp InferTensorInfos() to be more descriptive.
* Added method VerifyConstantLayerSetTensorInfo() in Graph.cpp/hpp
to error when ConstantLayer TensorInfo is not set.
* Updated Optimize() in Network.cpp to call VerifyConstantLayerSetTensorInfo().
* Added unit test with ConstantLayer TensorInfo not
set to catch error in VerifyConstantLayerSetTensorInfo().
* Added comments around method VerifyConstantLayerSetTensorInfo().
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I366596243f7c5823676222e2d0cce1335bc8c325
|
|
* Fix incorrect type used for loop variable (leading to conversion warnings)
* Fix use of non-standard datatype u_int8_t
Change-Id: Ide43d504e2df259c036e38c448247636dba278ad
Signed-off-by: Rob Hughes <robert.hughes@arm.com>
|
|
* Add validator wrapper
* Add validation logic:
Condition #1: All Memblocks have been assigned to a MemBin
Condition #2: No Memblock is assigned to multiple MemBins
Condition #3: No two Memblocks overlap in both the X and Y axis
Memblocks can overlap on the X axis for
SingleAxisPacking
Memblocks can overlap on the Y axis or
the X for MultiAxisPacking but not both
* Add test strategies and tests for overlap, duplicates
and unassigned blocks
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I7a779b35538ecf18a33b62b84512eba69eda1f86
|
|
in BackendRegistry'
* Updated IRuntime interface for providing custom memory optimizer strategy.
* Enabled selecting existing memory optimizer strategy by using BackendOptions
* Added MemoryOptimizerStrategyLibrary that sets one of the existing memory optimizer
strategies selected by user
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I037f8ac8efa79c0f71bd63e379101e3ad92d80c9
|
|
* Removes deprecated AddLayer, IsLayerSupported functions
* Marks the whole LayerVisitor class as deprecated not just the
constructor. This required to wrap all Accept functions in a
no deprecate macro because the LayerVisitor is used as a parameter in
there
* Removes usage of deprecated LayerVisitor and replaces it
with ExecuteStrategy. This required a few structural changes
in the unit tests
* Adds a default implementation for IStrategy called StrategyBase
* Changes pyarmnn to use non deprecated constructor for
INetworkProperties and adds related unit test
* Marks usage of deprecated code in pyarmnn as deprecated. This
required to extend INetworkProperties to allow backwards compatibility
* Removes deprecated functions from CpuAcc, GpuAcc and Ref backends
Note: This patch breaks compatibility with backends that are not
updated in this patch
!android-nn-driver:6325
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id13b6f37a74d26eadeda2da1dc92915e725ed5a5
|
|
* Added front-end
* Added Reference workload
* Added Serializer & Deserializer support
* Added unit tests
* Added NDHWC DataLayout
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Iec4d39e7433b5334d52fa44cf8efc6bcd39319d8
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Icf69b4c707014c5ae76425ad326bd2826381f305
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I43d052d020f90c13688901929cd22c715471ef4f
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I2e3dee3c73fe58c7cfcb3ce3667884202f46e6aa
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ic37fc49a97a5ca570a23bc415d15ee3841534336
|
|
* Add front end
* Add reference workload
* Add unit tests
* Add Serializer and Deserializer
* Update ArmNN Versioning
Signed-off-by: Simon Obute <simon.obute@arm.com>
Change-Id: I9ac1f953af3974382eac8e8d62d794d2344e8f47
|
|
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I0334a772c1453a1d568f27cddea9d0effff8a0a0
|
|
strategy'
* Added IMemoryOptimizerStrategy interface
* Added ConstLayerMemoryOptimizer strategy
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I6a92e659379e5cc39c375b669678eee8a8c08c20
|
|
* Added ExternallyManagedMemory capability, set false for backends
* Added MultiAxisPacking capability, set false for backends
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I96a2b66ed069a82552dae33f6e8ebe067bbd6c44
|
|
* Tflite parser
* Tflite delegate
* Serializer
* Deserializer
* Ref, CpuAcc and GpuAcc workloads
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I601a9ee1680b372c7955d9a628857d08c3cfd377
|
|
enabled
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I97b3302204e6a576220c800e21c5d031c84819a5
|
|
to Ref backend and armnn delegate
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I203d0029c12221228ffe229acda3c90594394e9b
|
|
* Update acl and ref backend capabilities
* Add check for AsyncExecution capability in LoadedNetwork
* Add new exception for capabilities
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I2f053c845a64f336e96d452793639c6e0d3eaa89
|
|
* Added the UseCustomMemoryAllocator interface to the Backend Developer Guide
* Added the GetCapabilities interface to the Backend Developer Guide
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I26e96ec1b3fe74b52c770269f3f79e688d196667
|
|
* Deregister backends in BackendHintTest.
* Deregister backend in ThrowBackendUnavailableException
* Clean up dynamic backends when an exception is thrown from
RuntimeImpl::RuntimeImpl.
* Use CHECK_THROWS_AS_MESSAGE syntax in ClCustomAllocatorTests.
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I0e6e5413dd074b5fcfc9515c85cb8d40a4a0b73c
|
|
* Also call DeregisterAllocator on CpuAcc backend.
* Removed problematic ClCustomAllocatorGpuAccNullptrTest unit test.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ia2894c82a2b5de1c8d662551ea07b9123dd682cb
|
|
* Add DmaBufProtected support to ClImportTensorHandle::Import()
* Add DmaBufProtected to Map/Unmap switch case in ClBackend
* Remove unreachable return statement
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I5918f6235af74ae287b8a73744a8cc979a07b0bf
|
|
* Updated supported sources in ICustomAllocator
* Added MemorySource to the overridden MemoryRegion in ClBackend
* Added switch statements to handle mapping/unmapping of differing memory sources
* Added Import handler to map allocated DmaBuf memory
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I2125f6f6fe72363d87ead62e211fc45e4fa28b3f
|
|
* Add test for invalid backend and nullptr
* Small refactor
* Throw exception on nullptr allocator instead of assert
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I94ce4f61d7cb3123831f1acd98165ae14c40033a
|
|
Add conditional compilation check to Cl specific header
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: Ib196b8ef4dc5fcfd1d1ccd3f29abf8e0ecd020cb
|
|
* Add implementation of IsUnidirectionalSequenceLstmSupported to RefLayerSupport
* Add RefUnidirectionalSequenceLstmWorkload
* Refactor Lstm to be able to use for Lstm and SequenceLstm
* Unit tests
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ibc066d213213a11b955dfefbe518de643298ba0c
|
|
* Updates the runtime options with a CustomAllocatorMap which allows to define a CustomAllocator for specific backends
* Change IBackendInternal interface to use a shared pointer to a custom allocator
* Update ClBackend.hpp/cpp to use the CustomAllocator
* Adds an example application and unit test which uses a CustomAllocator for GpuAcc
* Refactor of the interface to use MemorySource instead of the user Mapping cl_mem directly
* Modify the BackendRegistry to also hold a registry of CustomAllocators
* BackendRegistry Deregister will also deregister any allocators associated with that backend id
* set_global_allocator within the BaseMemoryManager so that it always matches the currently used allocator
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I156d819686021865f4375e6cb7a5c5dec8fee9e8
Signed-off-by: David Monahan <david.monahan@arm.com>
|