summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Burton <richard.burton@arm.com>2023-11-30 11:38:45 +0000
committerRichard <richard.burton@arm.com>2023-11-30 12:27:26 +0000
commit49482d53d7f8ee3fb0c2cc6c0553e9cbdfe6f332 (patch)
tree8cd371a63f4e2e7b70489b1009aaa2b7e4f02043
parentb891dd35e4f7403547ade73cbf6ad209193d728a (diff)
downloadml-embedded-evaluation-kit-49482d53d7f8ee3fb0c2cc6c0553e9cbdfe6f332.tar.gz
MLECO-4371 Update dependencies to 23.11 release components23.11-rc1
* Updated NPU components and dependencies (core-driver, core-platform, Vela, CMSIS, TensorFlow Lite Micro) to 23.11 release SHAs. * Changed Python version to 3.10 * Updated release notes and other documentation * Added workarounds to scripts in order to address build issues Signed-off-by: Aron Virginas-Tar <aron.virginas-tar@arm.com> Change-Id: I0a639b80881b53eebb216085b7e6764e3be8ca67
-rw-r--r--CMakeLists.txt2
-rw-r--r--Dockerfile23
m---------dependencies/cmsis-nn0
m---------dependencies/core-driver0
m---------dependencies/core-platform0
m---------dependencies/tensorflow0
-rw-r--r--docs/quick_start.md6
-rw-r--r--docs/sections/building.md14
-rwxr-xr-xdownload_dependencies.py2
-rw-r--r--release_notes.txt7
-rw-r--r--scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld5
-rw-r--r--scripts/cmake/platforms/mps3/sse-300/mps3-sse-300.sct3
-rw-r--r--scripts/cmake/platforms/simple_platform/simple_platform.sct3
-rw-r--r--scripts/cmake/platforms/simple_platform/simple_platform_debug.ld5
-rw-r--r--scripts/py/dependency_urls.json8
-rwxr-xr-xset_up_default_resources.py5
16 files changed, 57 insertions, 26 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 91f31f3..fbf3b72 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -84,7 +84,7 @@ if(POLICY CMP0123)
endif()
project(arm_ml_embedded_evaluation_kit
- VERSION 23.08.0
+ VERSION 23.11.0
DESCRIPTION "ARM ML Embedded Evaluation Kit"
LANGUAGES C CXX ASM)
diff --git a/Dockerfile b/Dockerfile
index c98a950..00fe747 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -21,10 +21,12 @@ RUN apt-get update && \
apt-get install -y \
make \
git \
- python3.9 \
+ python3.10 \
python3-pip \
- python3.9-dev \
- python3.9-venv \
+ python3.10-dev \
+ python3.10-venv \
+ g++-10 \
+ gcc-10 \
unzip \
curl \
wget \
@@ -33,10 +35,19 @@ RUN apt-get update && \
sudo \
telnet
-# Set Python3.9 as default
+# Set Python3.10 as default
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 10 && \
- update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 20 && \
- update-alternatives --set python3 /usr/bin/python3.9 && python3 --version
+ update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 20 && \
+ update-alternatives --set python3 /usr/bin/python3.10 && python3 --version
+
+# Update symlinks for gcc
+RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 10 && \
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 20 && \
+ update-alternatives --set gcc /usr/bin/gcc-10 && gcc --version
+# Update symlinks for g++
+RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 10 && \
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 20 && \
+ update-alternatives --set g++ /usr/bin/g++-10 && g++ --version \
# Download and install gcc 13.2
RUN curl -L https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi.tar.xz -o gcc-arm-none-eabi.tar.xz && \
diff --git a/dependencies/cmsis-nn b/dependencies/cmsis-nn
-Subproject 85164a811917770d7027a12a57ed3b469dac653
+Subproject bfc54edb61e873039ec0857cacc40df36b1d644
diff --git a/dependencies/core-driver b/dependencies/core-driver
-Subproject 90f9df900acdc0718ecd2dfdc53780664758dec
+Subproject 0189cd2b334b2d88302d13d6003c50a642db0bb
diff --git a/dependencies/core-platform b/dependencies/core-platform
-Subproject 8d3074b0e82ed46e45d13c22a39e40388a9df8c
+Subproject 1575e51075da805e6a85796c007f3c6eb5697d1
diff --git a/dependencies/tensorflow b/dependencies/tensorflow
-Subproject 568d181ccc1f60e49742fd43b7f97141ee8d45f
+Subproject 0996efe9b60fde8efcde5242df1afc6ee24d9ee
diff --git a/docs/quick_start.md b/docs/quick_start.md
index d9c3712..daef495 100644
--- a/docs/quick_start.md
+++ b/docs/quick_start.md
@@ -37,14 +37,14 @@ To get started quickly, please follow these steps:
[supported by Vela](https://review.mlplatform.org/plugins/gitiles/ml/ethos-u/ethos-u-vela/+/HEAD/SUPPORTED_OPS.md).
```commandline
- python3.9 ./build_default.py
+ python3 ./build_default.py
```
> **Note** The preceding command assumes you are using the GNU Arm Embedded toolchain. If you are using the Arm
> Compiler instead, you can override the default selection by executing:
```commandline
- python3.9 ./build_default.py --toolchain arm
+ python3 ./build_default.py --toolchain arm
```
5. Launch the project as explained in the following section: [Deployments](sections/deployment.md#deployment). In quick
@@ -71,7 +71,7 @@ mkdir resources_downloaded && cd resources_downloaded
python3 -m venv env
env/bin/python3 -m pip install --upgrade pip
env/bin/python3 -m pip install --upgrade setuptools
-env/bin/python3 -m pip install ethos-u-vela==3.9.0
+env/bin/python3 -m pip install ethos-u-vela==3.10.0
cd ..
curl -L https://github.com/ARM-software/ML-zoo/raw/7c32b097f7d94aae2cd0b98a8ed5a3ba81e66b18/models/anomaly_detection/micronet_medium/tflite_int8/ad_medium_int8.tflite \
diff --git a/docs/sections/building.md b/docs/sections/building.md
index e84acf9..d20e570 100644
--- a/docs/sections/building.md
+++ b/docs/sections/building.md
@@ -90,17 +90,17 @@ Before proceeding, it is *essential* to ensure that the following prerequisites
>
> `export PATH=$(readlink -e resources_downloaded/env/bin):${PATH}`
-- Python 3.9 or above is installed. Check your current installed version of Python by running:
+- Python 3.10 or above is installed. Check your current installed version of Python by running:
```commandline
python3 --version
```
```log
- Python 3.9.7
+ Python 3.10.12
```
- > **Note:** If you have an older version of Python installed (< 3.9) see the
+ > **Note:** If you have an older version of Python installed (< 3.10) see the
> [Troubleshooting](./troubleshooting.md#how-to-update-python3-package-to-newer-version)
> for instruction on how to install and use it.
> **Note:** This scenario might be true if you are using an Arm Virtual Hardware instance.
@@ -121,7 +121,7 @@ Before proceeding, it is *essential* to ensure that the following prerequisites
```
```log
- pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.9)
+ pip 22.0.2 from /usr/lib/python3/dist-packages/pip
```
- Make
@@ -357,11 +357,11 @@ This fetches every model into the `resources_downloaded` directory. It also opti
for the default 128 MACs configuration of the Arm® *Ethos™-U55* NPU and for the default 256 MACs configuration of the
Arm® *Ethos™-U65* NPU.
-> **Note:** This script requires Python version 3.9 or higher. Please make sure all [build prerequisites](./building.md#build-prerequisites)
-> are satisfied. If your environment points to system installed Python3 that is an older version than 3.9, choose the
+> **Note:** This script requires Python version 3.10 or higher. Please make sure all [build prerequisites](./building.md#build-prerequisites)
+> are satisfied. If your environment points to system installed Python3 that is an older version than 3.10, choose the
> required version explicitly after installing it:
> ```sh
-> python3.9 ./set_up_default_resources.py
+> python3.10 ./set_up_default_resources.py
> ```
>
> **Note:** This script also installs required version of CMake into the virtual environment, which can be used by activating it.
diff --git a/download_dependencies.py b/download_dependencies.py
index 786fa4c..995c7ae 100755
--- a/download_dependencies.py
+++ b/download_dependencies.py
@@ -42,7 +42,7 @@ def download(
temp.seek(0)
logging.info("Finished downloading %s.", url_file)
if url_file.endswith(".tar.gz"):
- untar(temp, to_path)
+ untar(temp.name, to_path)
else:
unzip(temp, to_path)
diff --git a/release_notes.txt b/release_notes.txt
index 76072d6..e70332b 100644
--- a/release_notes.txt
+++ b/release_notes.txt
@@ -1,3 +1,10 @@
+Changes in 23.11
+ * Support for 23.11 NPU components and dependencies (core-driver, core-platform, Vela 3.10.0, CMSIS, CMSIS-NN and TensorFlow Lite Micro).
+ * Increase minimum requirements of Python to 3.10
+ * Update Python files to conform to Pylint
+ * Adding support for Arm Cortex-M85 with GCC
+ * Updates to documentation
+
Changes in 23.08
* Support for 23.08 NPU components and dependencies (core-driver, core-platform, Vela 3.9.0, CMSIS, CMSIS-NN and TensorFlow Lite Micro).
* Update Python package requirements for compatibility reasons.
diff --git a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld
index 6531403..35f59f6 100644
--- a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld
+++ b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld
@@ -84,7 +84,8 @@ SECTIONS
*flatbuffer*.o
*Profiler*.obj
*lcd*.obj
- *timing_adapter.c.obj)
+ *timing_adapter.c.obj
+ *s4*.o)
.text*)
KEEP(*(.init))
@@ -208,6 +209,8 @@ SECTIONS
. = ALIGN(4);
*Profiler*.obj (*.text*)
. = ALIGN(4);
+ *s4*.o (*.text*) /* Temporary solution to move s4 operations to DDR. */
+ . = ALIGN(4);
} > DDR AT > DDR
/**
diff --git a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300.sct b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300.sct
index c9b1c44..2e3646e 100644
--- a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300.sct
+++ b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300.sct
@@ -103,6 +103,9 @@ LOAD_REGION_1 0x70000000 0x02000000
; activation buffers a.k.a tensor arena when memory mode dedicated sram
*.o (activation_buf_dram)
+
+ ; Temporary solution to move s4 operations here.
+ *s4*.o (+RO +RW +ZI)
}
;-----------------------------------------------------
diff --git a/scripts/cmake/platforms/simple_platform/simple_platform.sct b/scripts/cmake/platforms/simple_platform/simple_platform.sct
index f34170e..b987f5a 100644
--- a/scripts/cmake/platforms/simple_platform/simple_platform.sct
+++ b/scripts/cmake/platforms/simple_platform/simple_platform.sct
@@ -103,6 +103,9 @@ LOAD_REGION_1 0x70000000 0x02000000
; activation buffers a.k.a tensor arena when memory mode dedicated sram
*.o (activation_buf_dram)
+
+ ; Temporary solution to move s4 operations here.
+ *s4*.o (+RO +RW +ZI)
}
;-----------------------------------------------------
diff --git a/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld b/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld
index 4bbe6c0..dbedb8e 100644
--- a/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld
+++ b/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld
@@ -77,7 +77,8 @@ SECTIONS
*flatbuffer*.o
*lcd*.obj
*Profiler*.obj
- *timing_adapter.c.obj)
+ *timing_adapter.c.obj
+ *s4*.o)
.text*)
KEEP(*(.init))
@@ -201,6 +202,8 @@ SECTIONS
. = ALIGN(4);
*Profiler*.obj (*.text*)
. = ALIGN(4);
+ *s4*.o (*.text*) /* Temporary solution to move s4 operations to DDR. */
+ . = ALIGN(4);
} > DDR AT > DDR
/**
diff --git a/scripts/py/dependency_urls.json b/scripts/py/dependency_urls.json
index 56ea403..316c628 100644
--- a/scripts/py/dependency_urls.json
+++ b/scripts/py/dependency_urls.json
@@ -1,8 +1,8 @@
{
"cmsis": "https://github.com/ARM-software/CMSIS_5/archive/a75f01746df18bb5b929dfb8dc6c9407fac3a0f3.zip",
"cmsis-dsp": "https://github.com/ARM-software/CMSIS-DSP/archive/refs/tags/v1.15.0.zip",
- "cmsis-nn": "https://github.com/ARM-software/CMSIS-NN/archive/85164a811917770d7027a12a57ed3b469dac6537.zip",
- "core-driver": "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-driver.git/snapshot/ethos-u-core-driver-23.08.tar.gz",
- "core-platform": "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-platform.git/snapshot/ethos-u-core-platform-23.08.tar.gz",
- "tensorflow": "https://github.com/tensorflow/tflite-micro/archive/568d181ccc1f60e49742fd43b7f97141ee8d45fc.zip"
+ "cmsis-nn": "https://github.com/ARM-software/CMSIS-NN/archive/bfc54edb61e873039ec0857cacc40df36b1d644e.zip",
+ "core-driver": "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-driver.git/snapshot/ethos-u-core-driver-23.11.tar.gz",
+ "core-platform": "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-platform.git/snapshot/ethos-u-core-platform-23.11.tar.gz",
+ "tensorflow": "https://github.com/tensorflow/tflite-micro/archive/0996efe9b60fde8efcde5242df1afc6ee24d9ee2.zip"
}
diff --git a/set_up_default_resources.py b/set_up_default_resources.py
index a3987bc..f5cd0ac 100755
--- a/set_up_default_resources.py
+++ b/set_up_default_resources.py
@@ -39,8 +39,9 @@ from urllib.error import URLError
from scripts.py.check_update_resources_downloaded import get_md5sum_for_file
# Supported version of Python and Vela
-VELA_VERSION = "3.9.0"
-py3_version_minimum = (3, 9)
+
+VELA_VERSION = "3.10.0"
+py3_version_minimum = (3, 10)
# Valid NPU configurations:
valid_npu_config_names = [