Arm NN ML Software. The code here is a read-only mirror of https://review.mlplatform.org/admin/repos/ml/armnn
MIT License
Bot releases are visible (Hide)
No ABI breaking change occurred in ArmNN Core (libarmnn.so) and so the Major version has not changed, only a bump in minor version (33.1.0 → 33.2.0).
No API breaking back-end changes have occurred during the implementation of 24.08.
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.22.1 |
Tensorflow | 2.15.0 |
Onnx | 1.6.0 |
Flatbuffer | 23.5.26 |
Protobuf | 3.12.0 |
Android NDK | r26b |
mapbox/variant | 1.2.0 |
cxxopts | 3.1.1 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.1.0 |
stb | 2.16 |
Gemmlowp | 16e8662c34917be0065110bfcd9cc27d30f52fdf |
Published by KevinARM 5 months ago
No API breaking front-end changes have occurred during the implementation of 24.05.
No API breaking back-end changes have occurred during the implementation of 24.05.
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.19.0 (Ubuntu) and 3.19.0 (Debian) |
Tensorflow | 2.15.0 |
Onnx | 1.6.0 |
Flatbuffer | 23.5.26 |
Protobuf | 3.12.0 |
Android NDK | r26b |
mapbox/variant | 1.2.0 |
cxxopts | 3.1.1 |
doctest | 2.4.6 |
fmt | 8.3.0 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.2.0 |
stb | 2.16 |
xxd | 1.10 |
Published by KevinARM 8 months ago
No API breaking front-end changes have occurred during the implementation of 24.02
No API breaking back-end changes have occurred during the implementation of 24.02
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.19.0 (Ubuntu) and 3.19.0 (Debian) |
ACL | branches/arm_compute_24_02 |
android-nn-driver | branches/android-nn-driver_24_02 |
Tensorflow | 2.15.0 |
Onnx | 1.6.0 |
Flatbuffer | 23.5.26 |
Protobuf | 3.12.0 |
Android NDK | r26b |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.2.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 11 months ago
The following front-end API changes have occurred during the implementation of 23.11 that users should be aware of before upgrading. Due to these changes we have bumped our ARMNN_VERSION to 33.1.0 and our OPAQUE_DELEGATE_VERSION to 2.0.0, following Semantic Versioning guidelines.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Add ArmNNSettings to Opaque Delegate | 3e4b60897bde2ad7ab5b730c7c5d727e41cc0eef | https://review.mlplatform.org/c/ml/armnn/+/10493 | 2 changes have occurred: TfLiteArmnnOpaqueDelegateCreate function has a different signature: Previously: TfLiteOpaqueDelegate* TfLiteArmnnOpaqueDelegateCreate(const void* settings); Now: TfLiteOpaqueDelegate* TfLiteArmnnOpaqueDelegateCreate(armnnDelegate::DelegateOptions options); Size of struct ArmnnDelegatePlugin has increased as a new private member has been added: armnnDelegate::DelegateOptions m_delegateOptions; |
No API breaking back-end changes have occurred during the implementation of 23.11
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.19.0 (Ubuntu) and 3.19.0 (Debian) |
Tensorflow | 2.14.0 |
Onnx | 1.6.0 |
Flatbuffer | 23.5.26 |
Protobuf | 3.12.0 |
Android NDK | r25 |
mapbox/variant | 1.2.0 |
cxxopts | 3.1.1 |
doctest | 2.4.6 |
fmt | 8.3.0 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.2.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 about 1 year ago
tile
operator in CpuRef
, CpuAcc
, GpuAcc
.reverse_v2
operator in CpuRef
.pow
and squared_difference
as ElementWiseBinary
layers in CpuRef
, CpuAcc
, and GpuAcc
.squared_difference
, power
and ceil
to TypeUtils.hpp
.CpuAcc
and GpuAcc
CpuAcc
and GpuAcc
GpuAcc
DataType
to .dot
files for constant layers.FileComparisonExecutor
to ExecuteNetwork
.TensorInfo
to InputSlot
.batch_to_space
and space_to_batch
for CpuAcc
and GpuAcc
.reshape
layers where possible.NeonStridedSliceWorkload
.slice
end-to-end tests in all backends and Signed32
in CpuRef
.axis
to ViewsDescriptor
.reverse_v2
support to TFLite Parser.tile
to TFLite Parser.square
as mul
in the TFLite Parser.options != null
before adding fused activation in TFLite Parser.tile
to Serialiser/Deserialiser.reverse_v2
to Serialiser/Deserialiser.reverse_v2
to Support Library.tile
to Support Library.unidirectional_sequence_lstm
on CL
and Neon
.ExecuteNetwork
when running with TFLite Executor.Gather
reference workload.-Werror=unused-result
error.ExecuteNetwork
where --output-network-details-only
was not working with -T delegate
flag.Concat
permutation parameters in Support Library.SplitterLayer
to use overridden TensorInfos
correctly.printf
arguments.ExecuteNetwork
when a model file was passed without an extension.std::filesystem
with ghc::filesystem
.ConnectedToSplitterWithMoreThan4Dims
function to a more generally useful ConnectedToLayerType
function.Doxygen
output.armnn_assert
.The following front-end API changes have occurred during the implementation of 23.08 that users should be aware of before upgrading. Due to these changes we have bumped our ARMNN_VERSION to 33.0.0, following Semantic Versioning guidelines.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Removal of Reshape | 4cc341cf8b5a6e6bb0543504cbbfde6fa11a2cdb | https://review.mlplatform.org/c/ml/armnn/+/9885 | 4 additional virtual methods added to class IInputSlot: SetTensorInfo ( TensorInfo ), GetTensorInfo ( ) const, IsTensorInfoSet ( ) const, IsTensorInfoOverridden ( ) const |
Front end and reference implementation for TILE | 79a06a59bafadf736ca53c4240e87f9bbb657260 | https://review.mlplatform.org/c/ml/armnn/+/9920 | LayerType enum has had the LastLayer member value changed from 72 to 74 The member Tile with value 74 has been added |
Remove deprecated code | 09e4d05b85cc5ed419d282cdfc0b153f83c3fa39 | https://review.mlplatform.org/c/ml/armnn/+/9266 | 2 functions have been removed from the BatchMatMulDescriptor class: BatchMatMulDescriptor::GetAxesNotMul ( struct BatchMatMulDescriptor const& desc, TensorShape const& inputXShape, TensorShape const& inputYShape ) [static] BatchMatMulDescriptor::GetAxesToMul ( struct BatchMatMulDescriptor const& desc, TensorShape const& tensorXShape, TensorShape const& tensorYShape ) [static] |
Remove deprecated code (INetworkProperties) | b179382bcb4944d0137aa9799c3c56a2102ecda2 | https://review.mlplatform.org/c/ml/armnn/+/10001 | INetworkProperties structure has had the following fields removed: m_ExportEnabled m_ImportEnabled |
Remove deprecated code (ILayerSupport) | 66277031d8fb9588b5a9f3436b6a5f06173668a8 | https://review.mlplatform.org/c/ml/armnn/+/10005 | In ArmNN individual virtual IsXXXSupported() functions in the ILayerSupport class have been removed. This functionality has been replaced by a more ABI compliant model whereby an IsLayerSupported() function now accepts a LayerType argument. In ArmNNTestUtils, removal of 4 virtual methods from class MockLayerSupport: IsAdditionSupported ( TensorInfo const&, TensorInfo const&, TensorInfo const&, Optional<std::__cxx11::basic_string&> ) const IsConvolution2dSupported ( TensorInfo const&, TensorInfo const&, struct Convolution2dDescriptor const&, TensorInfo const&, Optionalconst&, Optional<std::__cxx11::basic_string&> ) const IsInputSupported ( TensorInfo const&, Optional<std::__cxx11::basic_string&> ) const IsOutputSupported ( TensorInfo const&, Optional<std::__cxx11::basic_string&> ) const |
Remove deprecated code (WorkloadFactory) | 7894ef93ad568250afda12e1b67bc5bfa4c0b41c | https://review.mlplatform.org/c/ml/armnn/+/10006 | In ArmNNTestUtils the MockWorkloadFactory class has had the following virtual method removed: CreateInput ( InputQueueDescriptor const&, struct WorkloadInfo const& ) const |
Added Axis to ViewsDescriptor | fca5916e4e6a44cf11b47328659d4d7ee95ec231 | https://review.mlplatform.org/c/ml/armnn/+/10073 | The size of thte ViewsDescriptor structure has changed from 48 bytes to 56 bytes Field m_IsAxisSet has been added |
The following back-end API changes have occurred during the implementation of 23.08 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Add names to workloads | 7cbe78140a274cec783049051df7c7298b974f13 | https://review.mlplatform.org/c/ml/armnn/+/9983 | Pure virtual method GetName ( ) const has been added to IWorkload class. Size of CopyMemGenericWorkload class has been changed from 152 bytes to 184 bytes. |
Remove deprecated code (SubgraphView) | 0f3e9a09a90664fc7c6479f1d7b312a4671d9659 | https://review.mlplatform.org/c/ml/armnn/+/10009 | Removed the following methods from SubgraphView: GetInputSlot, GetIputSlots, GetLayers, GetOutputSlot, GetOutputtSlots. Resulted in a change to return types for the following methods in SubgraphView as follows: begin() returns SubgraphView::IConnectableLayerIterator, begin() const returns SubgraphView::ConstIConnectableIterator, cbegin() const returns, SubgraphView::ConstIConnectableIterator, cend() const returns SubgraphView::ConstIConnectableIterator , end () returns SubgraphView::IConnectableLayerIterator, end() const returns SubgraphView::ConstIConnectableIterator |
Remove deprecated code (ILayerSupport) | a5048344b5dc95cf305d7ffdc7390ef6df109f4c | https://review.mlplatform.org/c/ml/armnn/+/10071 | Made IWorkloadFactory::CreateWorkload a pure virtual function to force client to write its own implementation. |
Fix coverity error on variable initialize | b9b97922723772014236abb5d0d21c2f07adc578 | https://review.mlplatform.org/c/ml/armnn/+/10075 | Adjusted sequence of variable initialization in struct WorkloadInfo: m_Name m_WeightsTensorInfo m_BiasTensorInfo m_ConvolutionMethod |
batch_to_space
and space_to_batch
) in CpuRef
.layerNames
to classic and opaque delegate.reverse_v2
to classic and opaque delegates.tile
to delegate and opaque delegate.leaky_relu
to delegate.unidirectional_sequence_lstm
operator.ExpandDims
would not work where batch != 1
.Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.19.0 (Ubuntu) and 3.19.0 (Debian) |
Tensorflow | 2.12.0 |
Onnx | 1.6.0 |
Flatbuffer | 2.0.6 |
Protobuf | 3.12.0 |
Android NDK | r25 |
mapbox/variant | 1.2.0 |
cxxopts | 3.1.1 |
doctest | 2.4.6 |
fmt | 8.3.0 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.2.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 over 1 year ago
The following front-end API changes have occurred during the implementation of 23.05 that users should be aware of before upgrading. Note: No ABI breaking change occured in ArmNN Core (libarmnn.so) and so the Major version has not changed, only a bump in minor version (32.0.0 → 32.1.0).
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Implement Pimpl Idiom for Delegate Options | 1bae865fecf99f25cd2d58390e0cf08467a22b4f | https://review.mlplatform.org/c/ml/armnn/+/9358 | Size of class DelegateOptions has been changed from 488 bytes to 8 bytes. Layout of parameter's stack of several functions has been changed and therefore parameters at higher positions in the stack may be incorrectly initialized by applications. Size of class Delegate has been changed from 552 bytes to 72 bytes. Size of field m_Options has been changed from 488 bytes to 8 bytes. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Implement Pimpl Idiom for OptimizerOptions | c5ee0d7460f1e0ec7e2b0639e3e8962934c4df09 | https://review.mlplatform.org/c/ml/armnn/+/9369 | The following functions have been changed to now accept OptimizerOptionsOpaque argument instead of the unstable OptimizerOptions. Note: OptimizerOptionsOpaque will accept an OptimizerOptions to it's constructor so this is not an API break, only an ABI break.DelegateOptions::DelegateOptions [C1] ( enum armnn::Compute computeDevice, struct armnn::OptimizerOptions const& optimizerOptions,armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int,armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C2] ( enum armnn::Compute computeDevice, struct armnn::OptimizerOptions const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C1] ( std::vectorarmnn::BackendIdconst& backends, struct armnn::OptimizerOptions const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C2] ( std::vectorarmnn::BackendIdconst& backends, struct armnn::OptimizerOptions const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::SetOptimizerOptions ( struct armnn::OptimizerOptions const& optimizerOptions)Replacement functions:DelegateOptions::DelegateOptions [C1] ( enum armnn::Compute computeDevice, armnn::OptimizerOptionsOpaque const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel,armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C2] ( enum armnn::Compute computeDevice, armnn::OptimizerOptionsOpaque const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C1] ( std::vectorarmnn::BackendIdconst& backends, armnn::OptimizerOptionsOpaque const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::DelegateOptions [C2] ( std::vectorarmnn::BackendIdconst& backends, armnn::OptimizerOptionsOpaque const& optimizerOptions, armnn::Optionalarmnn::LogSeverityconst& logSeverityLevel, armnn::Optional<std::function<void(arm::pipe::ProfilingGuid, unsigned int, armnn::ITensorHandle*)> >const& func)DelegateOptions::SetOptimizerOptions ( armnn::OptimizerOptionsOpaque const& optimizerOptions ) |
Add constant version of IConnectableLayer::GetConstantTensorsByRef | aeec3ce5c8f936fb1220a9de8c84cceef88d4080 | https://review.mlplatform.org/c/ml/armnn/+/9196 | For class IConnectableLayer a pure virtual method GetConstantTensorsByRef ( ) const has been added. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method.Note: The pure virtual function was added at the end so will not result in an ABI break. However you should usually not add new virtual functions for any reason, even to leaf classes, if the class is intended to remain binary compatible on Windows. Doing so may reorder existing virtual functions and break binary compatibility. As we do not target support for Windows we are not going to consider this an ABI break for ArmNN Core. |
The following back-end API changes have occurred during the implementation of 23.05 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Remove GetGraph and include of Graph.hpp header from public header | c1c5f2a519458f498934fa3f2074acc86f9f2f42 | https://review.mlplatform.org/c/ml/armnn/+/9351 | Size of class OptimizationViews has been changed from 360 bytes to 88 bytes. Field m_Graph has been removed from this type. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.12.0 (SHA 6f692f73cb2043b4a0b0446539cd8c15b3dd9220) |
Onnx | 1.6.0 |
Flatbuffer | 2.0.6 |
Protobuf | 3.12.0 |
Android NDK | r25 |
mapbox/variant | 1.2.0 |
cxxopts | 3.1.1 (SHA eb787304d67ec22f7c3a184ee8b4c481d04357fd) |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
mapbox/variant | 1.2.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 over 1 year ago
The following front-end API changes have occurred during the implementation of 23.02 that users should be aware of before upgrading.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Optimize the calling of IsLayerSupported(). | 5383767a7a759c867235ab66bd71f88281e3bd06 | https://review.mlplatform.org/c/ml/armnn/+/8742 | In class IConnectableLayer: Pure virtual method SetBackendId (BackendId const&) has been added to this class. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
When creating multiple Executors only the last one works fine | 5446a4d6d02002515fc58fafe33d74ae6dca5787 | https://review.mlplatform.org/c/ml/armnn/+/8997 | In class Delegate: Size of this type has been changed from 688 bytes to 680 bytes. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. Type of field m_Runtime has been changed from armnn::IRuntimePtr (16 bytes) to armnn::IRuntime* (8 bytes). Size of the inclusive type has been changed |
Fix incorrect last layer in Types.hpp | 6701daf754efbadcf95c969eee1ba57320763d84 | https://review.mlplatform.org/c/ml/armnn/+/8944 | In enum LayerType: Value of member LastLayer has been changed from 66 to 71. Applications may execute a wrong branch of code in the library and therefore change the behavior. |
Change to MemorySource to keep it usable as a bit mask | 1cebf4978bf7723aaf0501de5fb80a6ef77066bf | https://review.mlplatform.org/c/ml/armnn/+/9053 | In enum MemorySource: Value of member Gralloc has been changed from 5 to 8. Applications may execute a wrong branch of code in the library and therefore change the behavior. |
The following back-end API changes have occurred during the implementation of 23.02 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Remove deprecated code due to be removed in 23.02 | ec67a0f08e0f96a5aebf3cac65331c67f6649f5e | https://review.mlplatform.org/c/ml/armnn/+/8319 | In struct Convolution2dQueueDescriptor, DepthwiseConvolution2dQueueDescriptor and FullyConnectedQueueDescriptor: Field m_Bias has been removed from this type. Field m_Weight has been removed from this type. 1) Applications will access incorrect memory when attempting to access this field. 2) Size of the inclusive type has been changed. 3) The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. In class BaseWorkload , BaseWorkload and BaseWorkload: 1) Size of the inclusive type has been changed. 2) Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. 3) The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Return INetwork* not INetworkPtr& from OptimizationViews::GetINetwork() | 5b2145c92dabb68a0ec7ff65948f52d3fdcecf4a | https://review.mlplatform.org/c/ml/armnn/+/8828 | In OptimizationViews::GetNetwork(): Base type of return value has been changed from std::unique_ptr<INetwork, void()(INetwork)> to INetwork. Recompilation of a client program may be broken. |
Allow working copy SubgraphView to get Original Slots | 01f72693d39ed966ad06adadc8aac141bc395659 | https://review.mlplatform.org/c/ml/armnn/+/8918 | In class SubgraphView: Base class std::enable_shared_from_this has been added. 1) Size of the class has been changed from 160 bytes to 176 bytes. 2) The memory layout in this class has been shifted by 16 bytes. 3) The class has only inline or auto-generated constructors which will be copied to applications at compile time and will allocate an older memory layout. Call of any exported method of this class may access a memory outside the allocated objects or inside the older memory structure and result in crash or incorrect behavior of applications. 4) The memory layout and size of subclasses will be changed. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.10.0 |
Onnx | 1.6.0 |
Flatbuffer | 2.0.6 |
Protobuf | 3.12.0 |
Android NDK | r25 |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 over 1 year ago
This is a patch release to fix an issue in the Arm Support Library encountered on Android phones where the OpenCL libraries could not be detected.
In this case the 22.11 release was detecting the issue and throwing an exception but the Tensorflow Lite runtime was expecting an error code so fallback to the runtime was failing.
In this release an error code is being returned when a misconfigured/missing OpenCL installation is encountered and the Tensorflow Lite runtime is taking over execution of the graph as expected.
This 22.11.01 release contains all the features of Arm NN 22.11 release. Please find release note for 22.11 here https://github.com/ARM-software/armnn/releases/tag/v22.11.
Published by nikraj01 almost 2 years ago
Note: Following the upgrades to Tensorflow 2.10 and Flatbuffers 2.0.6 a compiler that supports C++17 is now required. This will prevent compilation on some older operating systems, e.g. Debian 9.
The following front-end API changes have occurred during the implementation of 22.11 that users should be aware of before upgrading.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Remove deprecated code 22.08 | 48f9d5db00a245d08317130b10171337df0c1142 | https://review.mlplatform.org/c/ml/armnn/+/8167 | Removed Symbols: INetwork::AddConvolution2dLayer ( struct Convolution2dDescriptor const& convolution2dDescriptor, ConstTensor const& weights, Optionalconst& biases, char const* name ). INetwork::AddDepthwiseConvolution2dLayer ( struct DepthwiseConvolution2dDescriptor const& convolution2dDescriptor, ConstTensor const& weights, Optionalconst& biases, char const* name ) |
Implement simple TOSA Reference Backend skeleton | ae8a6f528151a9e88236a92877be1e99aea69658 | https://review.mlplatform.org/c/ml/armnn/+/8082 | In class MockWorkloadFactory the following has changed: The relative position of virtual method CreateInput ( InputQueueDescriptor const&, struct WorkloadInfo const& ) const has been changed from 5 to 8. The relative position of virtual method CreateWorkload ( enum LayerType, struct QueueDescriptor const&, struct WorkloadInfo const& ) const has been changed from 8 to 7. The relative position of virtual method CreateTensorHandle ( TensorInfo const&, enum DataLayout, bool const ) const has been changed from 7 to 6. The relative position of virtual method CreateTensorHandle ( TensorInfo const&, bool const ) const has been changed from 6 to 5. The layout of v-table has been changed. Call of these virtual methods may result in crash or incorrect behavior of applications. |
Fix AllowExpandedDims option | 16c76d5db629d3ef7e4cb143bfa7e1d717e1d492 | https://review.mlplatform.org/c/ml/armnn/+/8419 | Added Symbols: INetwork::Create ( NetworkOptions const& networkOptions ) [static] INetwork::CreateRaw ( NetworkOptions const& networkOptions ) [static] Removed Symbols: INetwork::Create ( NetworkOptions networkOptions ) [static] INetwork::CreateRaw ( NetworkOptions networkOptions ) [static]. Effectively the parameters list has been changed for the above functions. The name of the appropriate symbol for these functions on binary level has been changed. This may cause undefined reference linker error in old client applications. struct OptimizerOptions: Field m_AllowExpandedDims has been added to this type. This field will not be initialized by old clients. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
Add functionality to print output tensors to file | 7bbf56598010041ea46c3fa9d32604db777ee26e | https://review.mlplatform.org/c/ml/armnn/+/8421 | struct OptimizerOptions: Field m_DebugToFile has been added at the middle position of this structural type. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
The following back-end API changes have occurred during the implementation of 22.11 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Implement simple TOSA Reference Backend skeleton | ae8a6f528151a9e88236a92877be1e99aea69658 | https://review.mlplatform.org/c/ml/armnn/+/8082 | ILayerSupport.hpp Changed pure virtual function IsChannelShuffleSupported to virtual function.WorkloadFactory.hpp.The relative position of virtual function CreateInput(const InputQueueDescriptor& descriptor, const WorkloadInfo& info) const has been moved.The layout of v-table has been changed. Call of these virtual methods may result in crash or incorrect behavior of applications. |
Fix AllowExpandedDims option | 16c76d5db629d3ef7e4cb143bfa7e1d717e1d492 | https://review.mlplatform.org/c/ml/armnn/+/8419 | const has been added for the constructor OptimizationViews(const NetworkOptions& networkOptions = {}) : m_INetwork(INetwork::Create(networkOptions)) As a result the layout of v-table has been changed. Calls of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Remove deprecated code 22.08 | d1628bffe27db398ff5c67c2e20f89e729f8bc31 | https://review.mlplatform.org/c/ml/armnn/+/8167 | Removed in WorkloadData.hpp ResizeBilinearQueueDescriptor has been removed. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.10.0 |
Onnx | 1.6.0 |
Flatbuffer | 2.0.6 |
Protobuf | 3.12.0 |
Android NDK | r25 |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
xxd | 1.10 |
Published by nikraj01 about 2 years ago
The following front-end API changes have occurred during the implementation of 22.08 that users should be aware of before upgrading.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Import inputs but don't export outputs fails | 626bd90378670eb5fd76f94526395430b752ad9e | https://review.mlplatform.org/c/ml/armnn/+/7661 | Field m_ExportEnabled has been added to type OptimizerOptions. This field will not be initialized by old clients that have not been recompiled. |
Get non-const IConnectableLayer from I/O slots | 09fa24d2f4b0177d55800bd01ec52c337701ef0a | https://review.mlplatform.org/c/ml/armnn/+/7835 | Pure virtual method GetOwningIConnectableLayer ( ) has been added to classes IOutputSlot and IInputSlot. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Remove deprecated code 22.05 | 4d2eec0436f75d526c2ec25623ad73c8d1ee9ac3 | https://review.mlplatform.org/c/ml/armnn/+/7712 | Removed Symbols: IsCapabilitySupported ( BackendId const& backend, enum BackendCapability capability ) FullyConnectedDescriptor::GetNumViews ( ) const INetwork::Accept ( ILayerVisitor& visitor ) const Pure virtual method Accept ( ILayerVisitor& ) const has been removed from class IConnectableLayer. The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Modified SubgraphView returned by GetWorkingCopy() | cea3d49619a87ffb81422c7e9383368baa93a408 | https://review.mlplatform.org/c/ml/armnn/+/7852 | Pure virtual method GetSlotIndex ( ) const has been added to class IInputSlot. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Update the async api to use ExecutionData | 21a6a1a5b72907573eade6d232bfaf45a4c14c52 | https://review.mlplatform.org/c/ml/armnn/+/7878 | experimental::IWorkingMemHandle Pure virtual method GetExecutionDataAt ( unsigned int ) has been added to this class. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. Pure virtual method GetWorkingMemDescriptor ( LayerGuid ) has been removed from this class. The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
The following back-end API changes have occurred during the implementation of 22.08 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Update the async api to use ExecutionData | 21a6a1a5b72907573eade6d232bfaf45a4c14c52 | https://review.mlplatform.org/c/ml/armnn/+/8051/2 | The following virtual functions have been added to class IBackendInternal: virtual ExecutionData CreateExecutionData(WorkingMemDescriptor&) const virtual void UpdateExecutionData(ExecutionData&, WorkingMemDescriptor&) const The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. The signature of IWorkload::ExecuteAsync() has changed, it now accepts ExecutionData& instead of WorkingMemDescriptor&. |
Add GetMemoryRequirements to IWorkload | 5e09080c3848fce5c39424dfac735d3281300aa4 | https://review.mlplatform.org/c/ml/armnn/+/7886 | The following virtual function has been added to class IWorkload: virtual armnn::Optionalarmnn::MemoryRequirements GetMemoryRequirements() The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Modified SubgraphView returned by GetWorkingCopy() | cea3d49619a87ffb81422c7e9383368baa93a408 | https://review.mlplatform.org/c/ml/armnn/+/7852 | The signature of SubgraphView::GetWorkingCopy() has changed, it has now been marked as const to reflect the fact that the graph represented by the working copy does not get altered. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.19.0 |
Tensorflow | 2.5.0 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
Published by nikraj01 over 2 years ago
This is a patch release of 22.05 where we have implemented Pooling3d custom operator for ArmNN TfLite Delegate. This feature is available in the 22.05 release branch itself (branches/armnn_22_05) and in the tag created for patch release v22.05.01.
Published by nikraj01 over 2 years ago
The following front-end API changes have occurred during the implementation of 22.05 that users should be aware of before upgrading.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Change the namespace from armnn::profiling to arm::pipe | 5aa9fd7ac6bf8dad576fa4a0a32aa3dae98d11ab | https://review.mlplatform.org/c/ml/armnn/+/7222 | Pure virtual method GetOwningIConnectableLayer( ) const has been added to class IOutputSlot. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. The following functions has had a change in signature meaning it will not be recognized by old applications: BackendRegistry::SetProfilingService IRuntime::RegisterDebugCallback Type of field m_LocalPacketHandlers has been changed from std::vector<std::shared_ptrprofiling::ILocalPacketHandler > to std::vector<std::shared_ptrarm::pipe::ILocalPacketHandler > in Runtime::CreateOptions::ExternalProfilingOptions Type of return value has been changed from profiling::ProfilingGuid to arm::pipe::ProfilingGuid in OptimizedNetwork::GetGuid |
Replace ProfilingService includes with IProfilingService. | af947729dc2aa7cdb6d4a716e2edf307710a8155 | https://review.mlplatform.org/c/ml/armnn/+/7240 | The following function has had a change in signature meaning it will not be recognized by old applications.BackendRegistry::SetProfilingService |
Remove dependency on armnn::Exception classes from the Profiling code | f9db3efe5ce2b989b59c47056e1b84b32d2f1100 | https://review.mlplatform.org/c/ml/armnn/+/7280 | Class armnn::BackendProfilingException has been moved to namespace arm::pipe; this will result in older applications not being able to find it. |
Replace armnn:Optional with arm::pipe::Optional in profiling code | decd08b89565b18067d229c8c25b6f3a3333c653 | https://review.mlplatform.org/c/ml/armnn/+/7295 | Class armnn::TimeoutException has been moved to namespace arm::pipe; this will result in older applications not being able to find it. |
Add Unidirectional Sequence Lstm support to TFLite | 5880b911bf4b7fd8308c93e299d77ac78f282c19 | https://review.mlplatform.org/c/ml/armnn/+/7023 | Following fields have been added to struct LstmDescriptor: m_CellIntermediateScalem_ForgetIntermediateScalem_HiddenStateScalem_HiddenStateZeroPointm_InputIntermediateScalem_OutputIntermediateScaleAs a result of this size of the struct has been changed |
ConstTensorsAsInput: DepthwiseConvolution2d | 0690265d83e5aa79bd174544a7b35330781619dd | https://review.mlplatform.org/c/ml/armnn/+/7417 | Pure virtual method VisitDepthwiseConvolution2dLayer ( IConnectableLayer const*, struct DepthwiseConvolution2dDescriptor const&, char const* ) has been added to this class.. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method.. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
ConstTensorsAsInput: Conv2d - FrontEnd | b4dd5cc86d4eb841de670f0f102ede599e0d9c40 | https://review.mlplatform.org/c/ml/armnn/+/7382 | Pure virtual method VisitConvolution2dLayer ( IConnectableLayer const*, struct Convolution2dDescriptor const&, char const* ) has been added to this class. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
The following back-end API changes have occurred during the implementation of 22.02 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Move headers to profiling/client/include | 277618302d0f131eac0b6ac2015dd3eb09aa6ff9 | https://review.mlplatform.org/c/ml/armnn/+/7327 | Headers have been moved to profiling/client/include. |
Change the namespace from armnn::profiling to arm::pipe | 5aa9fd7ac6bf8dad576fa4a0a32aa3dae98d11ab | https://review.mlplatform.org/c/ml/armnn/+/7222 | Namespace changed from armnn: profiling to armnn: pipe:: profiling |
Note: Arm NN is aware of an issue where converting a model to .armnn will yield unpredictable results when reading back in through the deserializer. This is due to the serializer being dependent on graph topology and the graph being out of order. The graph becomes out of order because of the additional constant layers as inputs that are created through the parsers
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.5.0 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
Android 12 Compatibility Testing was performed using the following:
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-12.0.0_r1 | SP1A.210812.015 | r36p0_01eac0-rc0 | 12_r2 (7987736) | 12_r2 (7973604) |
Android 11 Compatibility Testing was performed using the following:
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r6 | RPM1.210413.002 | r33p0_01eac0 | 11_r5 (7640833) | 11_r5 (7599184) |
Android 10 Compatibility Testing was performed using the following:
Androidtag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Published by nikraj01 over 2 years ago
The following front-end API changes have occurred during the implementation of 22.02 that users should be aware of before upgrading.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
SubgraphView uses IConnectableLayer rather than Layer in its m_Layers | 56ccf68c7858560f2ba00f19076b3cb112970881 | https://review.mlplatform.org/c/ml/armnn/+/6807 | Pure virtual method GetOwningIConnectableLayer( ) const has been added to class IOutputSlot.: Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Stabilize the ILayerSupport interface with unified strategy. | 34b429c2215bab7fd12b761dd5c200414c1b4a5b | https://review.mlplatform.org/c/ml/armnn/+/6903 | Virtual descriptor added to the struct BaseDescriptor, as a result the size of all desciptors has been changed.The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
SubgraphView: Add method of returning a GetSubgraphWorkingCopy. | 9d74ba6e85a043e9603445e062315f5c4965fbd6 | https://review.mlplatform.org/c/ml/armnn/+/6995 | Pure virtual method GetOwningIConnectableLayer( ) const has been added to class IInputSlot. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Add support of aligned host memory | e2af6f4322a1e2b8b3c391fb721a6a80c281477f | https://review.mlplatform.org/c/ml/armnn/+/7025 | The following functions have had a change in signature meaning they will not be recognized by old applications: IRuntime::EnqueueWorkload() accepts two new parameters preImportedInputIds and preImportedOutputIds. IRuntime::ImportInputs() accepts a new parameter forceImportMemorySource. IRuntime::ImportOutputs() accepts a new parameter forceImportMemorySource. |
Add GetParameters to IConnectableLayer | e46659669b753411421a6a552b32b9f1d27b8b2e | https://review.mlplatform.org/c/ml/armnn/+/7031 | Pure virtual method GetParameters ( ) const has been added to class IConnectableLayer. Virtual method IsNull ( ) const has been added to class BaseDescriptor. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Accessing ConstTensors from IConnectableLayer | 2e24175c683bca42496104591d6b702dad360b8e | https://review.mlplatform.org/c/ml/armnn/+/7040 | Pure virtual method GetConstantTensorsByRef ( ) has been added to class IConnectableLayer. Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Remove deprecated code 22.02 | b28e525233d43b2aaea4da56acdbe9914cb41b5b | https://review.mlplatform.org/c/ml/armnn/+/7104 | Deprecated LayerSupport.hpp and included IsXXXLayerSupported() functions have been removed as they have been replaced with ABI Stable ILayerSupport interface and the BackendHelper.hpp GetILayerSupportByBackendId() function. |
The following back-end API changes have occurred during the implementation of 22.02 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Add a Pooling3d FrontEnd and Ref Implementation | 7b885b3cce70154596b1994b013ea91527117c26 | https://review.mlplatform.org/c/ml/armnn/+/6511 | ILayerSupport.hpp Pure virtual function IsPooling3dSupported added requiring implementation by backend developers. |
Stabilize the ILayerSupport interface with unified strategy. | 34b429c2215bab7fd12b761dd5c200414c1b4a5b | https://review.mlplatform.org/c/ml/armnn/+/6903 | ABI stable virtual function IsLayerSupported(const LayerType& type, ...) has been added to ILayerSupport.hpp.The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Stabilize the IWorkloadFactory interface with unified strategy | 611c7fb97412230d5cefee047081455fb60db06c | https://review.mlplatform.org/c/ml/armnn/+/6906 | ABI stable virtual function CreateWorkload(const LayerType& type, ...) has been added to class IWorkloadFactory.The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.5.0 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
Android 12 Compatibility Testing was performed using the following:
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-12.0.0_r1 | SP1A.210812.015 | r35p0_01eac0 | 12_r1_arm64 (7698606) | 12_r1_arm64 (7698606) |
Android 11 Compatibility Testing was performed using the following:
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r6 | RPM1.210413.002 | r32p0_01eac0 | 11_r5 (7640833) | 11_r5 (7599184) |
Android 10 Compatibility Testing was performed using the following:
Android Tag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Published by nikraj01 almost 3 years ago
Arm NN 21.11 was focused on providing new capabilities and improve performance:
The following front-end API changes have occurred during the implementation of 21.11 that users should be aware of before upgrading. Due to these changes we have bumped our ARMNN_VERSION to 27.0.0, the Delegate to 25.0.0 and also bumping our Parsers to 24.3.0 following Semantic Versioning guidelines.
.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Remove deprecated code | 1b2654fb799c3d25ffcef4d31b5d026d359e2f8f | https://review.mlplatform.org/c/ml/armnn/+/6254 | Removed Symbols: INetwork::AddAbsLayer ( char const* name ) INetwork::AddDepthwiseConvolution2dLayer ( struct DepthwiseConvolution2dDescriptor const& convolution2dDescriptor, ConstTensor const& weights, ConstTensor const& biases, char const* name ) INetwork::AddDepthwiseConvolution2dLayer ( struct DepthwiseConvolution2dDescriptor const& convolution2dDescriptor, ConstTensor const& weights, char const* name ) INetwork::AddEqualLayer ( char const* name ) INetwork::AddGatherLayer ( char const* name )INetwork::AddGreaterLayer ( char const* name ) INetwork::AddMergerLayer ( MergerDescriptor const& mergerDescriptor, char const* name ) INetwork::AddResizeBilinearLayer ( struct ResizeBilinearDescriptor const& descriptor, char const* name ) INetwork::AddRsqrtLayer ( char const* name ) LayerSupport::IsMergerSupported ( BackendId const& backend, std::vector<TensorInfo const*> inputs, TensorInfo const& output, struct OriginsDescriptor const& descriptor, char* reasonIfUnsupported, size_t reasonIfUnsupportedMaxLength ) LayerSupport::IsResizeBilinearSupported ( BackendId const& backend, TensorInfo const& input, TensorInfo const& output, char* reasonIfUnsupported, size_t reasonIfUnsupportedMaxLength ) LayerSupport::IsRsqrtSupported ( BackendId const& backend, TensorInfo const& input, TensorInfo const& output, char* reasonIfUnsupported, size_t reasonIfUnsupportedMaxLength ) LayerSupport::IsSplitterSupported ( BackendId const& backend, TensorInfo const& input, struct ViewsDescriptor const& descriptor, char* reasonIfUnsupported, size_t reasonIfUnsupportedMaxLength ) Removed pure virtual methods, resulting in change to v-table layout: ILayerVisitor::VisitAbsLayer ILayerVisitor::VisitEqualLayer ILayerVisitor::VisitGatherLayer ILayerVisitor::VisitGreaterLayer ILayerVisitor::VisitMergerLayer ILayerVisitor::VisitResizeBilinearLayer ILayerVisitor::VisitRsqrtLayer Removed DataTypes: DataType::QuantisedAsymm8 DateType::QuantisedSymm16 DataType::QuantizedSymm8PerAxis |
'IMemoryOptimizerStrategy Add strategy library and add support in BackendRegistry' | b8a26d8f497f92643288a4c519af4d230ede1d7e | https://review.mlplatform.org/c/ml/armnn/+/6297 | struct IRuntime::CreationOptions: Member variable m_MemoryOptimizerStrategyMap has been added, changing the size of the type. class BackendRegistry: Member variable m_MemoryOptimizerStrategyMap has been added, changing the size of the type. |
Add missing runtime parameters to TfLite delegate. | 3e32a8700bf12d3b70d2824c12cdae907bde9360 | https://review.mlplatform.org/c/ml/armnn/+/6388 | class Delegate: Size of field m_Options has been changed from 136 bytes to 352 bytes. class DelegateOptions had the following fields added and so the size of the inclusive type has been changed. Field m_DynamicBackendsPath has been added to this type. Field m_EnableGpuProfiling has been added to this type. Field m_InternalProfilingDetail has been added to this type. Field m_InternalProfilingEnabled has been added to this type. Field m_ProfilingOptions has been added to this type. Field m_SerializeToDot has been added to this type. |
Profiling instrumentation throughout the Optimizer | f1e0ad38f1bc064e78e795f57db23901cf13f4ce | https://review.mlplatform.org/c/ml/armnn/+/6432 | struct OptimizerOptions: Field m_ProfilingEnabled has been added to this type. class Delegate: Size of this class has been increased from 416 bytes to 424 bytes. class DelegateOptions: Size of this class has been increased from 352 bytes to 360 bytes. Objects of these classes can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighboring objects on the stack or heap. This is due to addition of m_ProfilingEnabled to the OptimizerOptions used in constructors of both Delegate classes. |
Fix armnn_external_delegate option parsing | b1c62f11881e0d528bea5b3664a8f36e4c03b508 | https://review.mlplatform.org/c/ml/armnn/+/6519 | class Delegate: Size of field m_Options has been changed from 360 bytes to 616 bytes. class DelegateOptions: Field m_RuntimeOptions has been added to this type. Field m_BackendOptions has been removed from this type. Field m_DynamicBackendsPath has been removed from this type. Field m_EnableGpuProfiling has been removed from this type. Objects of these classes can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighboring objects on the stack or heap. |
Support the new memory API in loaded network | b1aad4270fa8ad5c4aa62e27d564baf723b2cee5 | https://review.mlplatform.org/c/ml/armnn/+/6552 | class INetworkProperties: Field m_ExternalMemoryManagementEnabled has been added to this type. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
The following back-end API changes have occurred during the implementation of 21.11 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Remove deprecated code | 1b2654fb799c3d25ffcef4d31b5d026d359e2f8f | https://review.mlplatform.org/c/ml/armnn/+/6254 | IBackendInternal.hpp Removed Symbols: virtual ISubGraphConverterPtr CreateSubGraphConverter(const std::shared_ptr& subGraph) const; virtual Optimizations GetOptimizations() const; virtual SubGraphUniquePtr OptimizeSubGraph(const SubGraph& subGraph, bool& optimizationAttempted) const; Removed Aliases: GraphUniquePtr, SubgraphViewUniquePtr, ISubGraphConverterPtr, SubGraphUniquePtr ILayerSupport.hpp Removed Symbols: IsEqualSupported IsGatherSupported IsGreaterSupported IsMergerSupported IsResizeBilinearSupported IsRsqrtSupported IsSplitterSupported |
Add Channel Shuffle Front end and Ref Implementation | 51f67776a695c217a32596af806afeeb080f5528 | https://review.mlplatform.org/c/ml/armnn/+/6211 | ILayerSupport.hpp Pure virtual function IsChannelShuffleSupported added requiring implementation by backend developers. |
Add Conv3d FrontEnd and Ref Implementation | b63a31170aee1d28267d83a4bc67b57708fb6b05 | https://review.mlplatform.org/c/ml/armnn/+/6338 | ILayerSupport.hpp Pure virtual function IsConvolution3dSupported added requiring implementation by backend developers. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.5.0 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
cxxopts | SHA 12e496da3d486b87fa9df43edea65232ed852510 |
doctest | 2.4.6 |
fmt | 7.0.1 |
ghc | 1.3.2 |
half | 1.12.0 |
stb | 2.16 |
Note: We have also added an Arm NN Android Library as a new experimental feature. It allows you to easily integrate Arm NN into an Android app. Please find the .aar file in the Asset section.
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-12 | SP1A.210812.003 | r34p0_01eac0 | 12_r1 (eng.upr473.20210901.005349) | 12_r1 (eng.upr473.20210901.024841) |
android-12 | SP1A.210812.003 | r32p1_01eac0 | 12_r1 (eng.upr473.20210901.005349)1 | 12_r1 (eng.upr473.20210901.024841) |
1: CtsNNAPITestCases with Mali Driver r32p1_01eac0. The following test is known to be failing: AddTwoWithHardwareBufferInputWithGPUUsage. Investigations indicate this failure is due to Android NN HAL utilizing Gralloc functionality not required by the Gralloc API. This issue has been raised with Google Android team, and is tracked as https://partnerissuetracker.corp.google.com/issues/202025253. Please quote Arm reference MIDCET-3783 when discussing this issue.
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r6 | RPM1.210413.002 | r33p0_01eac0 | 11_r3 (7127450) | 11_r3 (7137996) |
Androidtag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Published by nikraj01 about 3 years ago
Arm NN 21.08 was focused on providing new capabilities and improve performance::
NOTE: To run dynamic models through ExecuteNetwork the --infer-output-shape flag should be set.
The following front-end API changes have occurred during the implementation of 21.08 that users should be aware of before upgrading. Due to these changes we have bumped our ARMNN_VERSION to 26.0.0 while also bumping our Parsers and Delegate to 24.2.0 following Semantic Versioning guidelines.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Rework the async threadpool | f364d5391b08e9071cd965f5765385ec9156b652 | https://review.mlplatform.org/c/ml/armnn/+/5801 | Be aware that these classes are in the experimental namespace and should be treated as such. struct INetworkProperties: Field m_NumThreads has been removed from the middle position of this structural type. Size of this type has been changed from 32 bytes to 24 bytes. class IWorkingMemHandle: Pure virtual method GetInferenceId ( ) has been removed from this class. class IAsyncExecutionCallback: The following methods have been removed: GetEndTime ( ) const GetStartTime ( ) constWait ( ) const GetStatus ( ) const |
Add IsConstant flag to TensorInfo | b082ed076b489f17bad3663005801b251d642108 | https://review.mlplatform.org/c/ml/armnn/+/5842 | class TensorInfo: Size of this class has been increased from 80 bytes to 88 bytes. This is due to the addition of private member bool m_IsConstant. An object of this class can be allocated by applications which the old size will be hardcoded at original compile time. Call of any exported constructor will break the memory of neighboring objects on the stack or heap. struct BindingPointInfo: Size of field m_TensorInfo has been changed from 80 bytes to 88 bytes. The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Add protected mode to ArmNN CreationOptions | 15fcc7ed3163c9d4b1856955271854198c3c2696 | https://review.mlplatform.org/c/ml/armnn/+/5963 | struct IRuntime::CreationOptions: Field m_ProtectedMode has been added at the middle position of this structural type. Size of the inclusive type has been changed. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
Add the Custom Memory Allocator interface definition | 801e2d55de7a02b98f3d77dc9775b10b2bd9f16b | https://review.mlplatform.org/c/ml/armnn/+/5967 | struct IRuntime::CreationOptions: Field m_CustomAllocator has been added at the middle position of this structural type. Size of the inclusive type has been changed. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
Add front end support for UnidirectionalSequenceLstm on ArmNN | 8ed39ae450a077c7e4d672b5f05ff1d68ee67aab | https://review.mlplatform.org/c/ml/armnn/+/5956 | struct LstmDescriptor: Field m_TimeMajor has been added to this type. This field will not be initialized by old clients. Size of the inclusive type has been changed. |
JSON profiling output | 554fa09a0f3d6c9c572634c9d2de9bfb6c3218b0 | https://review.mlplatform.org/c/ml/armnn/+/5968 | struct INetworkProperties: Field m_ProfilingEnabled has been added to this type. This field will not be initialized by old clients. |
ConstTensorsAsInput: FullyConnected | 81beae3a870004795275e9266bc43d845b9f78db | https://review.mlplatform.org/c/ml/armnn/+/5942 | class ILayerVisitor: Pure virtual method VisitFullyConnectedLayer ( IConnectableLayer const*, struct FullyConnectedDescriptor const&, char const* ) has been added to this class. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications.The following previously deprecated functions have been removed:INetwork::AddFullyConnectedLayer(struct FullyConnectedDescriptor const& fullyConnectedDescriptor, ConstTensor const& weights, ConstTensor const& biases, char const* name) INetwork::AddFullyConnectedLayer(struct FullyConnectedDescriptor const& fullyConnectedDescriptor, ConstTensor const& weights, char const* name) |
Adds CustomAllocator interface and Sample App | c1c872f12797ef6fe52c4589113e7efc353e56eb | https://review.mlplatform.org/c/ml/armnn/+/5987 | struct IRuntime::CreationOptions: Field m_CustomAllocatorMap has been added at the middle position of this structural type. Size of the inclusive type has been changed. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications.class BackendRegistry: Field m_CustomMemoryAllocatorMap has been added to this type. Size of this type has been changed from 80 bytes to 136 bytes. |
Allow profiling details to be switched off during profiling | f487486c843a38fced90229923433d09f99fc2e5 | https://review.mlplatform.org/c/ml/armnn/+/6069 | struct INetworkProperties: Field m_OutputNetworkDetails has been added at the middle position of this structural type. Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
The following back-end API changes have occurred during the implementation of 21.08 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Refactor the reporting of capabilities from backends | b9af86ea42568ade799ee5529137e4756977b6c6 | https://review.mlplatform.org/c/ml/armnn/+/5728 | class IBackendInternal: virtual function GetCapabilities() const has been added, replacing the now deprecated HasCapability() function. The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Add protected mode to ArmNN CreationOptions | 15fcc7ed3163c9d4b1856955271854198c3c2696 | https://review.mlplatform.org/c/ml/armnn/+/5963 | class IBackendInternal: virtual function UseCustomMemoryAllocator() has been added.The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
Cmake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Tensorflow | 2.3.1 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-12 | SP1A.210812.003 | r32p1_01eac0 | 12_r1 (eng.upr473.20210901.005349)1 | 12_r1 (eng.upr473.20210901.024841) |
1: CtsNNAPITestCases with Mali Driver r32p1_01eac0. The following test is known to be failing: AddTwoWithHardwareBufferInputWithGPUUsage. Investigations indicate this failure is due to Android NN HAL utilizing Gralloc functionality not required by the Gralloc API. This issue has been raised with Google Android team, and is tracked as https://partnerissuetracker.corp.google.com/issues/202025253. Please quote Arm reference MIDCET-3783 when discussing this issue.
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r1 | RP1A.200720.009 | r31p0_01eac0 | 11_r4 (7352019) | 11_r4(7337463) |
android-11.0.0_r6 | RPM1.210413.002 | r32p0_01eac0 | 11_r4 (7352019) | 11_r4 (7337463) |
android-11.0.0_r6 | RPM1.210413.002 | r33p0_01eac0 | 11_r4 (7352019) | 11_r4 (7337463) |
Androidtag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Published by nikraj01 over 3 years ago
The 21.05 Release of Arm NN was focused on providing new capabilities to allow users attain higher performance by:
In addition to this, support was added to allow the MobileBERT network to be parsed and run.
Finally three deprecated components: the Tensorflow Parser, the Caffe Parser and the Arm NN Quantizer tool, were removed.
The following front-end API changes have occurred during the implementation of 21.05 that users should be aware of before upgrading. Due to these changes we have bumped our ARMNN_VERSION to 25.0.0 while also bumping our Parsers and Delegate to 24.1.0 following Semantic Versioning guidelines.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
Add Async Queue to IRuntime | e813d67f86df41a238ff79b5c554ef5027f56576 | https://review.mlplatform.org/c/ml/armnn/+/5493 | For struct INetworkProperties the member variable size_t m_NumThreads has been added resulting in the change of size of the inclusive type. |
Add front-end support for CAST + Add TfLiteParser support for CAST | b392e9845b7f40ab0c389f29f13f6ec84dd814d1 | https://review.mlplatform.org/c/ml/armnn/+/5374 | For enum class LayerType a new enum for Cast has been added which changes the class member LastLayer to equate to Cast rather than the previous Unmap. We advise against the usage of armnn::LayerType::LastLayer where stability is required. |
Add MemorySourceFlags to TensorHandleFactoryRegistry::GetFactory | 73d3e2e1616ba5dcdb0a190afba2463742bd4fcc | https://review.mlplatform.org/c/ml/armnn/+/5481 | For struct INetworkProperties the member variable MemorySource m_InputSource has been added resulting in the change of size of the inclusive type. For struct INetworkProperties the member variable MemorySource m_OutputSource has been added resulting in the change of size of the inclusive type. |
Move ILayerSupport.hpp to backends folder | cae45686aeed0761ff2c9115ef0a064278ae75fa | https://review.mlplatform.org/c/ml/armnn/+/5500 | include/armnn/ILayerSupport.hpp has been moved to include/armnn/backends/ILayerSupport.hpp this is to reflect the fact that ILayerSupport is a back-end interface. Front end users should move to using ABI stable GetILayerSupportByBackendId() |
NonConstWeights: Update front-end and TfLiteDelegate support for FullyConnected Operator | f0a6dec75832604d5ab18242dc216852821a8279 | https://review.mlplatform.org/c/ml/armnn/+/5180 | For class LayerSupportHandle the member variable BackendId m_BackendId has been added resulting in the change of size of the inclusive type. For struct FullyConnectedDescriptor the member variable bool m_ConstantWeights has been added resulting in the change of size of the inclusive type. |
Refactor Async Network API | 55a8ffda24fff5515803df10fb4863d46a1effdf | https://review.mlplatform.org/c/ml/armnn/+/5365 | For struct INetworkProperties the member variable bool m_AsyncEnabled has been added resulting in the change of size of the inclusive type. |
Remove cross-wiring in depthwise | 7612bd6cc385dfbf54f831a6349f3a9363c6d0a2 | https://review.mlplatform.org/c/ml/armnn/+/5411 | For method armnnUtils::Permuted() the argument bool perChannelPermute which was defaulted to false has been removed. |
Remove Quantizer | 4a621c43174b6bdd9dc0bff839b245bc2139d6a6 | https://review.mlplatform.org/c/ml/armnn/+/5486 | The formerly deprecated class INetworkQuantizer has been removed and so any code making use of it must be altered. |
The following back-end API changes have occurred during the implementation of 21.05 that users should be aware of before upgrading.
Feature | SHA | Gerrit Review | Resultant ABI/API changes |
---|---|---|---|
NonConstWeights: Update front-end and TfLiteDelegate support for FullyConnected Operator | 16fb1a2d9c1d3d80c0f0b6ab549919fbabd2a0b9 | https://review.mlplatform.org/c/ml/armnn/+/5180 | For class IBackendInternal the virtual method HasCapability ( enum BackendCapability ) const has been added. As a result the layout of v-table has been changed. Calls of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
Move ILayerSupport.hpp to backends folder | cae45686aeed0761ff2c9115ef0a064278ae75fa | https://review.mlplatform.org/c/ml/armnn/+/5500 | include/armnn/ILayerSupport.hpp has been moved to include/armnn/backends/ILayerSupport.hpp this is to reflect the fact that ILayerSupport is a back-end interface. |
Generalise ConstCpuTensorHandle | 1f58f03d82c482626b1b4673b6c0e25da4338fb5 | https://review.mlplatform.org/c/ml/armnn/+/5515 | include/armnn/backends/CpuTensorHandleFwd.hpp has been deprecated and replaced with include/armnn/backends/TensorHandleFwd.hpp and the forward declarations it contained have also been renamed to remove "Cpu". |
Enable import on GPU | e5f0b2409c2e557a5a78e2f4659d203154289b23 | https://review.mlplatform.org/c/ml/armnn/+/5605 | For class IBackendInternal the virtual method CreateWorkloadFactory with MemorySourceFlags inputFlags/outputFlags arguments has been added. As a result the layout of v-table has been changed. Calls of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. For class IBackendInternal the virtual method RegisterTensorHandleFactories with MemorySourceFlags inputFlags/outputFlags arguments has been added. As a result the layout of v-table has been changed. Calls of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. For class ITensorHandleFactory the method SupportsMapUnmap() is no longer final. |
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) 2.5.1 (Debian) |
CMake | 3.7.2 or later |
boost | 1.64 |
Tensorflow | 2.3.1 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r1 | RP1A.200720.009 | R30P0_01EAC0 | 11_r3 (7127450) | 11_r3 (7137996) |
android-11.0.0_r1 | RP1A.200720.009 | R31P0_01EAC0 | 11_r3 (7127450) | 11_r3 (7137996) |
android-11.0.0_r6 | RPM1.210413.002 | R32P0_01EAC0 | 11_r4 (7352019) | 11_r4 (7337463) |
Android Tag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Published by nikraj01 over 3 years ago
The following components have been deprecated and will be removed in the next release (21.05) of Arm NN.
Ubuntu 16.04 LTS is reaching End of Life.
Ubuntu Linux 16.04 LTS will no longer be supported by April 30, 2021.
At that time, Ubuntu 16.04 LTS will no longer receive security patches or other software updates.
Consequently Arm NN will from the 21.08 Release at the end of August 2021 no longer be officially supported on Ubuntu 16.04 LTS but will instead be supported on Ubuntu 18.04 LTS.
Note: We have added pre-built binaries (please see the Assets) of 21.02 Arm NN along with this release. Please refer to BuildGuideNative.md guide in the armnn/delegate for more information.
Tools | Supported Version |
---|---|
Git | 2.17.1 or later |
Scons | 2.4.1 (Ubuntu) and 2.5.1 (Debian) |
CMake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
Boost | 1.64 |
Tensorflow | 2.3.1 |
Caffe | tag 1.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Eigen3 | 3.3 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
Android Tag | Android Build ID | Mali Driver | Android Compatibility Test Suite | Android Vendor Test Suite |
---|---|---|---|---|
android-11.0.0_r1 | RP1A.200720.009 | R26P0_01EAC0, R30P0_01EAC0 | 11_r2 (6965179) | 11_r2 (6961477) |
Android Tag | Android Build ID | Mali Driver |
---|---|---|
android-10.0.0_r39 | QQ3A.200605.002.A1 | R23P0_01REL0 |
Note: Going forward Arm NN will be making document updates to the latest release, if we have missed any, and these will be available in github by selecting the doc tag corresponding to the release. For example, we have tag 21.02.doc1 which basically is the 21.02 release and also includes some of the documents which we updated for the 21.02 Release. There are no changes functionality wise. These document changes are cherry picked to the branches/armnn_21_02.
Published by nikraj01 almost 4 years ago
The 20.11 Release was intended to provide major improvements to usability and performance in addition to delivering some additional functionality.
The usability enhancements were:
The performance enhancements were:
The additional functionality was:
--compute CpuRef,CpuAcc
when using ExecuteNetwork doesn't work. To use multiple compute devices use --compute CpuRef --compute CpuAcc
.Tools | Version we support |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) and 2.5.1 (Debian) |
CMake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
boost | 1.64 |
Tensorflow | 2.3.1 |
Caffe | tag 1.0 |
Onnx | 1.6.0 |
Flatbuffer | 1.12.0 |
Protobuf | 3.12.0 |
Eigen3 | 3.3. |
Android | 10 and 11 |
Mali Driver | r25p1_01bet0 |
Android NDK | r20b |
mapbox/variant | 1.2.0 |
Published by nikraj01 about 4 years ago
Tools | Version we support |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) and 2.5.1 (Debian) |
CMake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
boost | 1.64 |
Tensorflow | TENSORFLOW_REVISION= 590d6eef7e91a6a7392c8ffffb7b58f2e0c8bc6b (v1.15.0) |
Caffe | CAFFE_REVISION= 7d3f8a7ea43fb06cd9804bc90933c7a91cd88ec9 |
Onnx | ONNX_REVISION= f612532843bd8e24efeab2815e45b436479cc9ab |
Flatbuffer | 1.12.0 |
Protobuf | 3.5.2 |
Eigen3 | 3.3 |
Android | 9 and 10 |
Mali Driver | r25p1_01bet0 |
Android NDK | r20b |
Published by nikraj01 over 4 years ago
Tools | Version we support |
---|---|
Git | 2.17.1 or later |
SCons | 2.4.1 (Ubuntu) and 2.5.1 (Debian) |
CMake | 3.5.1 (Ubuntu) and 3.7.2 (Debian) |
boost | 1.64 |
Tensorflow | TENSORFLOW_REVISION= 590d6eef7e91a6a7392c8ffffb7b58f2e0c8bc6b (v1.15.0) |
Caffe | CAFFE_REVISION= 7d3f8a7ea43fb06cd9804bc90933c7a91cd88ec9 |
Onnx | ONNX_REVISION= f612532843bd8e24efeab2815e45b436479cc9ab |
Flatbuffer | 1.10.0 |
Protobuf | 3.5.2 |
Eigen3 | 3.3 |
Android | 9 and 10 |
Mali Driver | r23 |
Android NDK | r20b |