Commit Graph

12 Commits

Author SHA1 Message Date
Peter Bee
2831af6395 apps/mlearning: tweak lib makefile
only one .c needed for each function group
add -flax-vector-conversions to avoid build error on gcc && M55

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2022-03-28 16:08:58 +08:00
Peter Bee
96efff32fe apps/mlearning: tweak lib makefile
only one .c needed for each function group
add -flax-vector-conversions to avoid build error on gcc && M55

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2022-03-28 16:08:58 +08:00
Alin Jerpelea
18609ab1df mlearning: cmsis: enable FPU support
In case of HW with FPU we can benefit from the FPU support.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-24 11:26:27 -03:00
Alin Jerpelea
67c05f172b mlearning: cmsis: libcmsisdsp: simplify config naming
the extra function configuration name can be simplified
for better readability

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-24 00:56:22 +08:00
Alin Jerpelea
a943184ab2 NNABLA: build as a module
NNABLA_RT should compile as a module to provide the necessary support
for the dnn test application

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-23 21:57:25 +08:00
Alin Jerpelea
0ee15da565 cmsis: build CMSIS support as a module
CMSIS should compile as a module to provide the necessary support
for the dnn test application

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-23 21:57:25 +08:00
Alin Jerpelea
0c69ccea18 libcmsisnn: add the new CHW functionality
The patch for CHW functionality has been added as a result we
can compile the new functions

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-23 21:57:25 +08:00
Alin Jerpelea
02a50ccb1f mlearning: CMSIS NN: add support for the CHW tensor layout
- support float version of convolution
 - support the CHW tensor layout

following function prototypes are added:
 - arm_convolve_CHW_f32_basic_nonsquare()
 - arm_convolve_CHW_q15_basic_nonsquare()
 - arm_convolve_CHW_q7_basic_nonsquare()
 - arm_nn_CHW_mat_mult_kernel_q7_q15()

NOTE:this patch will be contributed to SMSIS and reverted later from NuttX
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-19 00:54:49 +08:00
Alin Jerpelea
020503576c mlearning: nnabla: fix include path
During contribution the folders have moved and the path
should be updated

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-16 23:47:50 +08:00
Alin Jerpelea
5dc7694b17 Add support for CMSIS NN
the CMSIS NN software library is a collection of efficient neural
network kernels developed to maximize the performance and minimize
the memory footprint of neural networks on Cortex-M processor cores.

Project https://github.com/ARM-software/CMSIS_5

The library is divided into a number of functions each covering
a specific category:

    Convolution Functions
    Activation Functions
    Fully-connected Layer Functions
    SVDF Layer Functions
    Pooling Functions
    Softmax Functions
    Basic math Functions

The library has separate functions for operating on different weight
and activation data types including 8-bit integers (q7_t) and 16-bit
integers (q15_t). The descrition of the kernels are included in the
function description.

More information
https://www.keil.com/pack/doc/CMSIS/NN/html/index.html

Project license : Apache 2.0 License
https://github.com/ARM-software/CMSIS_5/blob/develop/LICENSE.txt

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-02-01 19:53:07 +08:00
Alin Jerpelea
53f6574054 Add support for NNabla C Runtime
This is a runtime library for inference Neural Network created
by Neural Network Libraries.

Project git: https://github.com/sony/nnabla-c-runtime

It is almost independent from external libraries(depends on C
standard math library) and is written in Pure C (C99).

It has been developed with priority over readability rather than
performance, making it ideal for learning and porting.
It adopts an extensible architecture, and you can use the function
you implemented yourself as necessary for applications that need performance.

Project license : Apache 2.0 License
https://github.com/sony/nnabla-c-runtime/blob/master/LICENSE

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-01-27 17:33:16 +08:00
Alin Jerpelea
2052adc90a add Machine Learning folder and menu
This is a placeholder to group Machine Learning functionality
for microcontrolers.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-01-27 17:33:16 +08:00