diff --git a/aidge_export_arm_cortexm/operators.py b/aidge_export_arm_cortexm/operators.py index 2903edefc53199337fb4a658a6fc27ac2ed6b7cc..521cb36e42520ec069be6c2e8b9b66ee7b2cb442 100644 --- a/aidge_export_arm_cortexm/operators.py +++ b/aidge_export_arm_cortexm/operators.py @@ -269,9 +269,7 @@ class ReLU_ARMCortexM_float32(ExportNodeCpp): self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "relu.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Relu" / "aidge_relu_float32.h"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Relu" / "aidge_relu_float32.h") @ExportLibAidgeARM.register("Conv2D", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Conv_ARMCortexM_float32(ExportNodeCpp): @@ -286,15 +284,13 @@ class Conv_ARMCortexM_float32(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "conv_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "Conv.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - # str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "Conv.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) @ExportLibAidgeARM.register_generic("ArmPadConv2D", aidge_core.ImplSpec([ aidge_core.IOSpec(aidge_core.dtype.any), # Input[0] : Input Spec @@ -334,17 +330,16 @@ class PadConvScaling_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "lowbit_conv_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp", fwd_include=False), + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) + @ExportLibAidgeARM.register_generic("ArmConv2D", aidge_core.ImplSpec([ @@ -384,17 +379,15 @@ class ConvScaling_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "lowbit_conv_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp", fwd_include=False), + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) @ExportLibAidgeARM.register_generic("ArmFC", aidge_core.ImplSpec([ @@ -424,17 +417,15 @@ class FCScaling_ARMCortexM_int4(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "fc_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "lowbit_fc_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "LowbitFc.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "LowbitFc.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp", fwd_include=False), + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) # FIXME This take the precedence on float32 kernel due to poor management of IOSpec # Need to update the IOSpec @@ -492,17 +483,15 @@ class Conv_ARMCortexM_int4(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "lowbit_conv_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "LowbitConv.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "subkernels_functions.hpp", fwd_include=False), + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) @ExportLibAidgeARM.register("ConvDepthWise2D", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class ConvDW_ARMCortexM(ExportNodeCpp): @@ -517,9 +506,7 @@ class ConvDW_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "conv_dw_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "ConvDW.hpp") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "ConvDW.hpp") @ExportLibAidgeARM.register_metaop("PaddedConvDepthWise2D", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class PaddedConvDW_ARMCortexM(ExportNodeCpp): @@ -542,9 +529,7 @@ class PaddedConvDW_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "conv_dw_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "ConvDW.hpp") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "ConvDW.hpp") @@ -569,9 +554,7 @@ class PaddedConv_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "conv_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "conv_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "Conv.hpp") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Convolution" / "Conv.hpp") class Pooling_ARMCortexM(ExportNodeCpp): @@ -586,10 +569,8 @@ class Pooling_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "pool_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "pool_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Pooling" / "Pooling.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Pooling" / "Pooling.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) self.kernel = node.get_operator().attr.kernel_dims self.stride = node.get_operator().attr.stride_dims @@ -607,15 +588,13 @@ class FC_ARMCortexM_float32(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "fc_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "fc_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "Fc.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - # str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "Fc.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + # self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) @ExportLibAidgeARM.register("MaxPooling2D", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class MaxPooling_ARMCortexM(Pooling_ARMCortexM): @@ -643,15 +622,13 @@ class FC_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "fc_config.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "fc_kernel.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "Fc.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp"), - # str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "FullyConnected" / "Fc.hpp") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "Macs.hpp", fwd_include=False) + # self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "swar_arm_acle.h", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "nn_scaling_functions.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "typedefs.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "utils.hpp", fwd_include=False) + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "assert.h", fwd_include=False) @ExportLibAidgeARM.register("Add", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Add_ARMCortexM(ExportNodeCpp): @@ -661,10 +638,8 @@ class Add_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "add.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "add.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Add" / "aidge_add_float32.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Add" / "aidge_add_float32.h") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) @ExportLibAidgeARM.register("Sub", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Sub_ARMCortexM(ExportNodeCpp): @@ -674,10 +649,8 @@ class Sub_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "sub.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "sub.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Sub" / "aidge_sub_float32.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Sub" / "aidge_sub_float32.h") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) @ExportLibAidgeARM.register("Mul", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Mul_ARMCortexM(ExportNodeCpp): @@ -687,10 +660,8 @@ class Mul_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "mul.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "mul.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Mul" / "aidge_mul_float32.h"), - str(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h") - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Mul" / "aidge_mul_float32.h") + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Utils" / "aidge_supportfunctions.h", fwd_include=False) @ExportLibAidgeARM.register("Softmax", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Softmax_ARMCortexM(ExportNodeCpp): @@ -699,9 +670,7 @@ class Softmax_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "softmax.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "softmax.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Softmax" / "aidge_softmax_chw_float32.h"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Softmax" / "aidge_softmax_chw_float32.h") @ExportLibAidgeARM.register("Atan", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Atan_ARMCortexM(ExportNodeCpp): @@ -711,9 +680,7 @@ class Atan_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "atan.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "atan.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Atan" / "aidge_atan.hpp"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Atan" / "aidge_atan.hpp") @ExportLibAidgeARM.register("Slice", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) @@ -724,9 +691,7 @@ class Slice_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "slice.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "slice.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Slice" / "aidge_slice_float32.hpp"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Slice" / "aidge_slice_float32.hpp") @ExportLibAidgeARM.register("Concat", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Concat_ARMCortexM(ExportNodeCpp): @@ -736,9 +701,7 @@ class Concat_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "concat.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "concat.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Concat" / "aidge_concat_float32.hpp"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Concat" / "aidge_concat_float32.hpp") @ExportLibAidgeARM.register("Sigmoid", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class Sigmoid_ARMCortexM(ExportNodeCpp): @@ -749,9 +712,7 @@ class Sigmoid_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "activation.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "activation_chw.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Sigmoid" / "aidge_sigmoid_float32.h"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Sigmoid" / "aidge_sigmoid_float32.h") @ExportLibAidgeARM.register("MatMul", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32))) class MatMul_ARMCortexM(ExportNodeCpp): @@ -761,6 +722,4 @@ class MatMul_ARMCortexM(ExportNodeCpp): self.config_template = str(ROOT / "_Aidge_Arm" / "templates" / "configuration" / "matmul.jinja") self.forward_template = str(ROOT / "_Aidge_Arm" / "templates" / "forward_call" / "matmul.jinja") self.include_list = [] - self.kernels_to_copy = [ - str(ROOT / "_Aidge_Arm" / "kernels" / "Matmul" / "aidge_matmul_chw_float32.h"), - ] + self.add_kernel_to_copy(ROOT / "_Aidge_Arm" / "kernels" / "Matmul" / "aidge_matmul_chw_float32.h")