Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/Open-CMSIS-Pack/devtools/main/tools/packgen/schema/manifest.schema.json |
| 2 | |
| 3 | #---------------------------------------------------------------------------- |
| 4 | # Copyright (c) 2022 Arm Limited. All rights reserved. |
| 5 | # SPDX-License-Identifier: Apache-2.0 |
| 6 | # |
| 7 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 8 | # you may not use this file except in compliance with the License. |
| 9 | # You may obtain a copy of the License at |
| 10 | # |
| 11 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 12 | # |
| 13 | # Unless required by applicable law or agreed to in writing, software |
| 14 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 15 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 16 | # See the License for the specific language governing permissions and |
| 17 | # limitations under the License. |
| 18 | #---------------------------------------------------------------------------- |
| 19 | |
| 20 | # YML file to help generate a CMSIS pack for ml-embedded-eval-kit API. |
| 21 | # See the CMakeLists.txt in the same directory to see the targets that |
| 22 | # are included in the pack. |
| 23 | # |
| 24 | # Ideal usage: from the root of the repository |
| 25 | # |
Kshitij Sisodia | 9c6f9f8 | 2022-05-20 14:30:02 +0100 | [diff] [blame^] | 26 | # ml-embedded-eval-kit $ packgen -s ./ \ # Source dir (run this from repo root) |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 27 | # -v ./scripts/cmake/cmsis-pack-gen/use-case-api.yml \ # This file's path |
| 28 | # -o <path-to>/ml-embedded-eval-kit-pack \ # Where to generate the ouput |
| 29 | # -i <path-to>/tensorflow.tensorflow-lite-micro.pdsc \ # Tensorflow packs' PDSC file |
| 30 | # -i <path-to>/ARM.CMSIS.pdsc \ # CMSIS packs' PDSC file |
| 31 | # |
| 32 | # The PDSC files are the ones extracted from the downloaded packs (and is optional). |
| 33 | # packgen and packchk must be installed. See https://github.com/Open-CMSIS-Pack/devtools |
| 34 | # on how to build these tools. |
| 35 | |
| 36 | build: |
| 37 | - name: "build-dir" |
Kshitij Sisodia | 937052d | 2022-05-13 16:44:16 +0100 | [diff] [blame] | 38 | options: "cmake -DCMSIS_PACK_GEN_FLOW=ON" |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 39 | |
| 40 | packs: |
| 41 | - name: "ml-embedded-eval-kit-uc-api" |
| 42 | description: "Sample use case APIs derived from ml-embedded-eval-kit" |
| 43 | vendor: "ARM" |
Kshitij Sisodia | 9c6f9f8 | 2022-05-20 14:30:02 +0100 | [diff] [blame^] | 44 | license: "LICENSE_APACHE_2.0.txt" |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 45 | url: "https://review.mlplatform.org/admin/repos/ml/ethos-u/ml-embedded-evaluation-kit/" |
| 46 | |
| 47 | requirements: |
| 48 | packages: |
Kshitij Sisodia | 9c6f9f8 | 2022-05-20 14:30:02 +0100 | [diff] [blame^] | 49 | - attributes: {vendor: "tensorflow", name: "tensorflow-lite-micro", version: "1.22.02"} |
| 50 | - attributes: {vendor: "ARM", name: "CMSIS", version: "5.8.0"} |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 51 | |
| 52 | releases: |
| 53 | - version: "22.05.0" |
Kshitij Sisodia | 9c6f9f8 | 2022-05-20 14:30:02 +0100 | [diff] [blame^] | 54 | date: "2022-05-23" |
| 55 | description: "Beta release package" |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 56 | |
| 57 | # @TODO: Add API header names and descriptions here (see placeholder below). |
| 58 | # apis: |
| 59 | # - name: "Image classification use case API" |
| 60 | # attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Capiversion: "1.0.0"} |
| 61 | # description: "Arm ml-embedded-eval kit example APIs" |
| 62 | # files: |
| 63 | # - name: "use_case/img_class/include/ImgClassProcessing.hpp" |
| 64 | # attributes: {category: header, attr: config, version: "1.0.0"} |
| 65 | |
| 66 | taxonomy: |
| 67 | - attributes: {Cclass: "Machine Learning"} |
| 68 | description: "Machine Learning software frameworks and libraries" |
| 69 | - attributes: {Cgroup: "Evaluation Kit"} |
| 70 | description: "A collection of end-to-end examples provided by Arm for Arm Cortex-M CPU and Arm Ethos-U NPU targets." |
| 71 | |
| 72 | components: |
| 73 | - name: log |
| 74 | target: log |
| 75 | attributes: { Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Common: Log", Cversion: "1.0.0" } |
| 76 | description: "Logging header-only utility" |
| 77 | |
| 78 | - name: arm_math |
| 79 | target: arm_math |
| 80 | attributes: { Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Common: Math", Cversion: "1.0.0" } |
| 81 | description: "Math function helpers dependent on CMSIS-DSP." |
Kshitij Sisodia | 937052d | 2022-05-13 16:44:16 +0100 | [diff] [blame] | 82 | conditions: |
| 83 | - require: { Cclass: "CMSIS", Cgroup: "DSP"} |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 84 | |
| 85 | - name: common_api |
| 86 | target: common_api |
| 87 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Common: API", Cversion: "1.0.0"} |
| 88 | description: "Common API" |
Kshitij Sisodia | 937052d | 2022-05-13 16:44:16 +0100 | [diff] [blame] | 89 | dependencies: ["arm_math", "log"] |
| 90 | conditions: |
| 91 | - require: { Cclass: "Machine Learning", Cgroup: "TensorFlow" } |
Kshitij Sisodia | eb9dfa7 | 2022-05-09 11:35:24 +0100 | [diff] [blame] | 92 | |
| 93 | - name: ad_api |
| 94 | target: ad_api |
| 95 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Vibration: Anomaly detection", Cversion: "1.0.0"} |
| 96 | description: "Anomaly detection use case API." |
| 97 | dependencies: common_api |
| 98 | |
| 99 | - name: asr_api |
| 100 | target: asr_api |
| 101 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Voice: Automatic speech recognition", Cversion: "1.0.0"} |
| 102 | description: "ASR use case API." |
| 103 | dependencies: common_api |
| 104 | |
| 105 | - name: img_class_api |
| 106 | target: img_class_api |
| 107 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Vision: Image classification", Cversion: "1.0.0"} |
| 108 | description: "Image classification use case API." |
| 109 | dependencies: common_api |
| 110 | |
| 111 | - name: inference_runner_api |
| 112 | target: inference_runner_api |
| 113 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Generic", Cversion: "1.0.0"} |
| 114 | description: "Generic inference runner use case API." |
| 115 | dependencies: common_api |
| 116 | |
| 117 | - name: kws_api |
| 118 | target: kws_api |
| 119 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Voice: Keyword spotting", Cversion: "1.0.0"} |
| 120 | description: "KWS use case API." |
| 121 | dependencies: common_api |
| 122 | |
| 123 | - name: noise_reduction_api |
| 124 | target: noise_reduction_api |
| 125 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Voice: Noise reduction", Cversion: "1.0.0"} |
| 126 | description: "RNN Noise use case API." |
| 127 | dependencies: common_api |
| 128 | |
| 129 | - name: object_detection_api |
| 130 | target: object_detection_api |
| 131 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Vision: Object detection", Cversion: "1.0.0"} |
| 132 | description: "Object detection use case API." |
| 133 | dependencies: common_api |
| 134 | |
| 135 | - name: vww_api |
| 136 | target: vww_api |
| 137 | attributes: {Cclass: "Machine Learning", Cgroup: "Evaluation Kit", Csub: "Vision: Person detection", Cversion: "1.0.0"} |
| 138 | description: "Visual wake word use case API." |
| 139 | dependencies: common_api |