github ARM-software/armnn v20.05
Release 20.05

New Features:

  • Added comparison operators (EQUAL, NOT_EQUAL, GREATER, GREATER_EQUAL, LESS, LESS_EQUAL) support to CpuAcc and GpuAcc backends
  • Added EXP operator support to CpuAcc backend
  • Added NEG operator support to CpuAcc and GpuAcc backend
  • Added QLSTM operator partial support (projection not yet supported) to Reference backend
  • Added QLSTM operator full support to CpuAcc and GpuAcc backends
  • Added Boolean data type
  • Added QAsymmS8 to ArmnnQuantizer
  • Added QAsymmS8 data type
  • Added BFloat16 data type
  • Added BFloat16 support to Reference backend
    • Activation
    • Addition
    • ArgMinMax
    • BatchNormalization
    • BatchToSpaceNd
    • Comparison
    • Concat
    • Constant
    • Convolution2d
    • Debug
    • DepthToSpace
    • DepthwiseConvolution2d
    • DetectionPostProcess
    • Equal
    • Floor
    • FullyConnected
    • Gather
    • Input
    • InstanceNormalization
    • L2Normalization
    • LogSoftmax
    • Lstm
    • Maximum
    • Mean
    • MemCopy
    • MemImport
    • Merge
    • Minimum
    • Multiplication
    • Normalization
    • Output
    • Pad
    • Permute
    • Pooling2d
    • Quantize
    • Division
    • Prelu
    • Reshape
    • Resize
    • Slice
    • Softmax
    • SpaceToBatchNd
    • SpaceToDepth
    • Splitter
    • Stack
    • StandIn
    • StridedSlice
    • Subtraction
    • Switch
    • TransposeConvolution2d
    • Transpose
  • Added support for BFloat16 turbo mode

TfLite Parser:

  • Added support for STRIDED_SLICE operator
  • Added support for EXP operator
  • Added support for SPLIT_V operator
  • Enabled SPLIT along any dimension

Tf Parser:

  • Added support for PACK/STACK

ArmNN Serializer

  • Added QSymmS8 data type support Armnn Serializer Schema, ArmnnSchema.fbs
  • Added per-axis quantization parameters to ArmnnConverter (Serializer - Deserializer) tool

Public API Changes:

  • Added Activate and Deactivate timeline control packet to the External Profiling protocol

Backend API Changes:

  • User backend hint API to select preferred backend on a per layer basis

Bug Fixes:

  • Fixed segfault parsing reshape layer
  • Fixed ArmNN Compile Error when compiled against gcc 9
  • Fixed unit test errors when running on raspberry pi due to the fact that the size of thread::id is platform dependent
    • Fixed LSTM layer CellToInputWeights

Other changes:

  • Separated out BasePipeServer library from GatorDMock
  • Introduced polymorphic_downcast implementation
  • Introduced numeric_cast implementation
  • Introduced PolymorphicPointerDowncast implementation
  • Removed boost::ignore_unused
  • Removed boost::polymorphic_pointer_downcast
  • Removed boost::polymorphic_downcast
  • Eliminated space restriction in batch norm layer which was giving errors when loading a quantized model
  • Doxygen Beautification
    Integration of PyArmNN

Known issues:

Build Dependencies:

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
latest release: v20.08
5 months ago