Add Loongson Advanced SIMD Extension support: -DCPU_BASELINE=LASX
authorwxsheng <78061310+gititgo@users.noreply.github.com>
Sat, 10 Sep 2022 06:39:43 +0000 (14:39 +0800)
committerGitHub <noreply@github.com>
Sat, 10 Sep 2022 06:39:43 +0000 (09:39 +0300)
commit4154bd06677c30475e2545cbee05906dd9a367cb
treea867160cb7b6dbe4a7cf8b6076854bd69f4f31bf
parent866191478fb580195c56e7f14dfe0a7d04bd2545
Add Loongson Advanced SIMD Extension support: -DCPU_BASELINE=LASX

* Add Loongson Advanced SIMD Extension support: -DCPU_BASELINE=LASX
* Add resize.lasx.cpp for Loongson SIMD acceleration
* Add imgwarp.lasx.cpp for Loongson SIMD acceleration
* Add LASX acceleration support for dnn/conv
* Add CV_PAUSE(v) for Loongarch
* Set LASX by default on Loongarch64
* LoongArch: tune test threshold for Core/HAL.mat_decomp/15

Co-authored-by: shengwenxue <shengwenxue@loongson.cn>
24 files changed:
cmake/OpenCVCompilerOptimizations.cmake
cmake/OpenCVDetectCXXCompiler.cmake
cmake/checks/cpu_lasx.cpp [new file with mode: 0644]
modules/core/include/opencv2/core/cv_cpu_dispatch.h
modules/core/include/opencv2/core/cv_cpu_helper.h
modules/core/include/opencv2/core/cvdef.h
modules/core/include/opencv2/core/hal/intrin.hpp
modules/core/include/opencv2/core/hal/intrin_lasx.hpp [new file with mode: 0644]
modules/core/src/parallel_impl.cpp
modules/core/src/system.cpp
modules/core/test/test_hal_core.cpp
modules/dnn/CMakeLists.txt
modules/dnn/src/int8layers/convolution_layer.cpp
modules/dnn/src/int8layers/fully_connected_layer.cpp
modules/dnn/src/int8layers/layers_common.simd.hpp
modules/dnn/src/layers/convolution_layer.cpp
modules/dnn/src/layers/fully_connected_layer.cpp
modules/dnn/src/layers/layers_common.simd.hpp
modules/imgproc/src/imgwarp.cpp
modules/imgproc/src/imgwarp.hpp
modules/imgproc/src/imgwarp.lasx.cpp [new file with mode: 0644]
modules/imgproc/src/resize.cpp
modules/imgproc/src/resize.hpp
modules/imgproc/src/resize.lasx.cpp [new file with mode: 0644]