diff options
author | Mohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com> | 2023-03-23 22:21:31 +0000 |
---|---|---|
committer | Mohmun02 <MohammedSuhail.Munshi@arm.com> | 2023-04-13 09:24:52 +0000 |
commit | a1b1e41bb261f5613f443fed7071936a360686ed (patch) | |
tree | eff2978a682fb24c8078df9c6c796fde51074255 /src/CMakeLists.txt | |
parent | 8b7f42aa0e76a65a4ffa46ee875df6a6220695ae (diff) | |
download | ComputeLibrary-a1b1e41bb261f5613f443fed7071936a360686ed.tar.gz |
Implement MatMul Function and Operator with Floating Point support for CPU
- Implements MatMul function and operator for floating point datatype FP16/FP32
- Includes support for transposing dynamic tensors prior to matrix multiplication.
- Adds tests for 2D/3D/4D+ tensors in MatMul with F32/F16 datatype (with all combinations of transposed/not-transposed tensors)
- Updates fixture to allow for testing fused activation in MatMul
- Adds tests for matmul with and without fused activation
Resolved: [COMPMID-5898]
Signed-off-by: Mohammed Suhail Munshi <MohammedSuhail.Munshi@arm.com>
Change-Id: Iefa84b26dd723c9a51e6c3f91023152c6c31ace2
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/9411
Reviewed-by: SiCong Li <sicong.li@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r-- | src/CMakeLists.txt | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 92c888056e..336d2cd5cc 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -757,10 +757,10 @@ target_sources( cpu/kernels/instancenorm/generic/neon/impl.cpp cpu/kernels/internal/CpuDepthwiseConv2dAssemblyWrapperKernel.cpp cpu/kernels/internal/CpuPool2dAssemblyWrapperKernel.cpp - cpu/kernels/lut/generic/neon/u8.cpp cpu/kernels/l2normlayer/generic/neon/fp16.cpp cpu/kernels/l2normlayer/generic/neon/fp32.cpp cpu/kernels/l2normlayer/generic/neon/impl.cpp + cpu/kernels/lut/generic/neon/u8.cpp cpu/kernels/maxunpool/generic/neon/fp16.cpp cpu/kernels/maxunpool/generic/neon/fp32.cpp cpu/kernels/maxunpool/generic/neon/impl.cpp @@ -829,6 +829,7 @@ target_sources( cpu/operators/CpuGemmDirectConv2d.cpp cpu/operators/CpuGemmLowpMatrixMultiplyCore.cpp cpu/operators/CpuGemmLowpOutputStage.cpp + cpu/operators/CpuMatMul.cpp cpu/operators/CpuMaxUnpooling.cpp cpu/operators/CpuMul.cpp cpu/operators/CpuPermute.cpp @@ -913,6 +914,7 @@ target_sources( runtime/NEON/functions/NELSTMLayer.cpp runtime/NEON/functions/NELSTMLayerQuantized.cpp runtime/NEON/functions/NELogical.cpp + runtime/NEON/functions/NEMatMul.cpp runtime/NEON/functions/NEMaxUnpoolingLayer.cpp runtime/NEON/functions/NEMeanStdDevNormalizationLayer.cpp runtime/NEON/functions/NENormalizationLayer.cpp @@ -960,4 +962,4 @@ target_sources( runtime/Tensor.cpp runtime/TensorAllocator.cpp runtime/Utils.cpp -) +)
\ No newline at end of file |