Skip to content

Commit

Permalink
r-tinymaix:TinyMaix是面向单片机的超轻量级的神经网络推理库 (#1695)
Browse files Browse the repository at this point in the history
* r-tinymaix:TinyMaix是面向单片机的超轻量级的神经网络推理库
  • Loading branch information
RiceChen0 authored Nov 3, 2023
1 parent 205560b commit d551084
Show file tree
Hide file tree
Showing 3 changed files with 161 additions and 0 deletions.
1 change: 1 addition & 0 deletions ai/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,6 @@ source "$PKGS_DIR/packages/ai/ulapack/Kconfig"
source "$PKGS_DIR/packages/ai/quest/Kconfig"
source "$PKGS_DIR/packages/ai/naxos/Kconfig"
source "$PKGS_DIR/packages/ai/ncnn/Kconfig"
source "$PKGS_DIR/packages/ai/r-tinymaix/Kconfig"

endmenu
132 changes: 132 additions & 0 deletions ai/r-tinymaix/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@

# Kconfig file for package r-tinymaix
menuconfig PKG_USING_R_TINYMAIX
bool "r-tinymaix: A tiny inference Neural Network library specifically."
select PKG_USING_RT_VSNPRINTF_FULL
default n

if PKG_USING_R_TINYMAIX

config PKG_R_TINYMAIX_PATH
string
default "/packages/ai/r-tinymaix"

config R_TINYMAIX_USING_CIFAR10_SAMPLE
bool "Enable using tinymaix cifar10 sample"
default n

config R_TINYMAIX_USING_MNIST_SAMPLE
bool "Enable using tinymaix mnist sample"
default n

config R_TINYMAIX_USING_VWW_SAMPLE
bool "Enable using tinymaix vww sample"
default n

choice
prompt "Arch Type"
default R_TINYMAIX_USING_ARCH_CPU
help
Select the arch type

config R_TINYMAIX_USING_ARCH_CPU
bool "Default, pure cpu compute"

config R_TINYMAIX_USING_ARCH_ARM_SIMD
bool "ARM Cortex M4/M7, etc"

config R_TINYMAIX_USING_ARCH_ARM_NEON
bool "ARM Cortex A7, etc"

config R_TINYMAIX_USING_ARCH_ARM_MVEI
bool "ARMv8.1: M55, etc"

config R_TINYMAIX_USING_ARCH_RV32P
bool "T-head E907, etc"

config R_TINYMAIX_USING_ARCH_RV64V
bool "T-head C906,C910, etc"
endchoice

config R_TINYMAIX_USING_ARCK_TYPE
int
default 0 if R_TINYMAIX_USING_ARCH_CPU
default 1 if R_TINYMAIX_USING_ARCH_ARM_SIMD
default 2 if R_TINYMAIX_USING_ARCH_ARM_NEON
default 3 if R_TINYMAIX_USING_ARCH_ARM_MVEI
default 4 if R_TINYMAIX_USING_ARCH_RV32P
default 5 if R_TINYMAIX_USING_ARCH_RV64V

choice
prompt "Option Level"
default R_TINYMAIX_USING_OPT0
help
Select the option level

config R_TINYMAIX_USING_OPT0
bool "Default, least code and buf"

config R_TINYMAIX_USING_OPT1
bool "Opt for speed, need more code and buf"

config R_TINYMAIX_USING_OPT2
bool "TODO"
endchoice

config R_TINYMAIX_USING_OPTION_LEVEL
int
default 0 if R_TINYMAIX_USING_OPT0
default 1 if R_TINYMAIX_USING_OPT1
default 2 if R_TINYMAIX_USING_OPT2

choice
prompt "Model Type"
default R_TINYMAIX_USING_MODULE_INT8
help
Select the option level

config R_TINYMAIX_USING_MODULE_INT8
bool "Default, module int8"

config R_TINYMAIX_USING_MODULE_INT16
bool "Module int16"

config R_TINYMAIX_USING_MODULE_FP32
bool "Module FP32"

config R_TINYMAIX_USING_MODULE_FP16
bool "Module FP16"

config R_TINYMAIX_USING_MODULE_FP8_143
bool "Module FP8 143"

config R_TINYMAIX_USING_MODULE_FP8_152
bool "Module FP8 152"
endchoice

config R_TINYMAIX_USING_MODULE_TYPE
int
default 0 if R_TINYMAIX_USING_MODULE_INT8
default 1 if R_TINYMAIX_USING_MODULE_INT16
default 2 if R_TINYMAIX_USING_MODULE_FP32
default 3 if R_TINYMAIX_USING_MODULE_FP16
default 4 if R_TINYMAIX_USING_MODULE_FP8_143
default 5 if R_TINYMAIX_USING_MODULE_FP8_152

choice
prompt "Version"
default PKG_USING_R_TINYMAIX_LATEST_VERSION
help
Select the package version

config PKG_USING_R_TINYMAIX_LATEST_VERSION
bool "latest"
endchoice

config PKG_R_TINYMAIX_VER
string
default "latest" if PKG_USING_R_TINYMAIX_LATEST_VERSION


endif

28 changes: 28 additions & 0 deletions ai/r-tinymaix/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"name": "r-tinymaix",
"description": "r-tinymaix TinyMaix is a tiny inference Neural Network library specifically for microcontrollers (TinyML)",
"description_zh": "r-tinymaix TinyMaix是面向单片机的超轻量级的神经网络推理库,即TinyML推理库,可以让你在任意单片机上运行轻量级深度学习模型",
"enable": "PKG_USING_R_TINYMAIX",
"keywords": [
"r-tinymaix"
],
"category": "ai",
"author": {
"name": "RiceChen",
"email": "[email protected]",
"github": "RiceChen0"
},
"license": "Apache-2.0",
"repository": "https://github.com/RiceChen0/r-tinymaix",
"icon": "unknown",
"homepage": "https://github.com/RiceChen0/r-tinymaix#readme",
"readme": "r-tinymaix TinyMaix is a tiny inference Neural Network library specifically for microcontrollers (TinyML)",
"site": [
{
"version": "latest",
"URL": "https://github.com/RiceChen0/r-tinymaix.git",
"filename": "Null for git package",
"VER_SHA": "main"
}
]
}

0 comments on commit d551084

Please sign in to comment.