diff options
author | Tim Hall <tim.hall@arm.com> | 2023-05-23 19:04:41 +0100 |
---|---|---|
committer | Kristofer Jonsson <kristofer.jonsson@arm.com> | 2023-05-24 12:31:58 +0200 |
commit | 7697b775797c5503df4bf159b14bda7cfba17710 (patch) | |
tree | 91396e54b02696bbddd8b3bed6752d3e4be173f7 | |
parent | ad51f65baa58b1282e79754356e5551b0d2ab87c (diff) | |
download | ethos-u-7697b775797c5503df4bf159b14bda7cfba17710.tar.gz |
MLBEDSW-7505: Document limitation due to Runtime error on yolo_v2 on fpga_m55_h32
- Added a known issues section
- Documented how to resolve an out of memory error in the known issues
Signed-off-by: Tim Hall <tim.hall@arm.com>
Change-Id: I09cc508c75b0df0c9248447bb302bc079363e889
-rw-r--r-- | README.md | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -104,6 +104,27 @@ Without these patches there may be output diffs between TFL and TFLM for certain There's a discrepancy in tensorflow/lite/micro/cortex_m_corstone_300/README.md fixed by https://github.com/tensorflow/tflite-micro/pull/1972. +# Known Issues + +## TensorFlow Lite for Microcontrollers Out of Memory Error during Runtime +During runtime the TensorFlow Lite for Microcontrollers framework might report +the following fatal error: +`Failed to resize buffer. Requested: X, available: Y, missing: Z`, where X, Y +and Z are numbers of bytes and X = Y + Z. +There can be several reasons for running out of memory during an inference but +one cause is that too much memory was allocated to the Ethos-U during the +offline compilation phase of the `.tflite` file using Vela. This can result in +not enough memory being available at runtime for the other software components +e.g. the application, the framework, or the reference kernels. The solution is +to calculate the amount of memory required at runtime by all components and then +update the amount allocated to the Ethos-U by using either the Vela CLI option +`--arena-cache-size` or the `arena_cache_size` attribute in Vela's `.ini` +configuration file. This calculation can be difficult to get right and so a +pragmatic solution would be to start by reducing the amount allocated to the +Ethos-U by the value āZā (from the error message) rounded up to the nearest +multiple 16 (the default tensor alignment used in Vela). This may be an +iterative process. + # Trademark notice Arm, Cortex and Ethos are registered trademarks of Arm Limited (or its |