add avx512 compile option
This commit is contained in:
parent
e0adfec9a9
commit
6b80799e58
10
build.sh
10
build.sh
|
@ -26,7 +26,7 @@ usage()
|
||||||
echo " [-a on|off] [-p on|off] [-i] [-R] [-D on|off] [-j[n]] [-e gpu|ascend|cpu] \\"
|
echo " [-a on|off] [-p on|off] [-i] [-R] [-D on|off] [-j[n]] [-e gpu|ascend|cpu] \\"
|
||||||
echo " [-P on|off] [-z [on|off]] [-M on|off] [-V 10.1|11.1|310|910] [-I arm64|arm32|x86_64] [-K] \\"
|
echo " [-P on|off] [-z [on|off]] [-M on|off] [-V 10.1|11.1|310|910] [-I arm64|arm32|x86_64] [-K] \\"
|
||||||
echo " [-B on|off] [-E] [-l on|off] [-n full|lite|off] [-H on|off] \\"
|
echo " [-B on|off] [-E] [-l on|off] [-n full|lite|off] [-H on|off] \\"
|
||||||
echo " [-A on|off] [-S on|off] [-k on|off] [-W sse|neon|avx|off] \\"
|
echo " [-A on|off] [-S on|off] [-k on|off] [-W sse|neon|avx|avx512|off] \\"
|
||||||
echo " [-L Tensor-RT path] \\"
|
echo " [-L Tensor-RT path] \\"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
|
@ -60,7 +60,7 @@ usage()
|
||||||
echo " -l Compile with python dependency, default on"
|
echo " -l Compile with python dependency, default on"
|
||||||
echo " -S Enable enable download cmake compile dependency from gitee , default off"
|
echo " -S Enable enable download cmake compile dependency from gitee , default off"
|
||||||
echo " -k Enable make clean, clean up compilation generated cache "
|
echo " -k Enable make clean, clean up compilation generated cache "
|
||||||
echo " -W Enable x86_64 SSE or AVX instruction set, use [sse|avx|neon|off], default off for lite and avx for CPU"
|
echo " -W Enable x86_64 SSE or AVX instruction set, use [sse|neon|avx|avx512|off], default off for lite and avx for CPU"
|
||||||
echo " -H Enable hidden"
|
echo " -H Enable hidden"
|
||||||
echo " -L Link and specify Tensor-RT library path, default disable Tensor-RT lib linking"
|
echo " -L Link and specify Tensor-RT library path, default disable Tensor-RT lib linking"
|
||||||
}
|
}
|
||||||
|
@ -284,12 +284,12 @@ checkopts()
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
W)
|
W)
|
||||||
if [[ "$OPTARG" != "sse" && "$OPTARG" != "off" && "$OPTARG" != "avx" && "$OPTARG" != "neon" ]]; then
|
if [[ "$OPTARG" != "sse" && "$OPTARG" != "off" && "$OPTARG" != "avx" && "$OPTARG" != "avx512" && "$OPTARG" != "neon" ]]; then
|
||||||
echo "Invalid value ${OPTARG} for option -W, -W parameter must be sse|neon|avx|off"
|
echo "Invalid value ${OPTARG} for option -W, -W parameter must be sse|neon|avx|avx512|off"
|
||||||
usage
|
usage
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if [[ "$OPTARG" == "sse" || "$OPTARG" == "avx" ]]; then
|
if [[ "$OPTARG" == "sse" || "$OPTARG" == "avx" || "$OPTARG" == "avx512" ]]; then
|
||||||
X86_64_SIMD="$OPTARG"
|
X86_64_SIMD="$OPTARG"
|
||||||
fi
|
fi
|
||||||
if [[ "$OPTARG" == "neon" ]]; then
|
if [[ "$OPTARG" == "neon" ]]; then
|
||||||
|
|
|
@ -72,7 +72,9 @@ if(ENABLE_CPU)
|
||||||
elseif("${X86_64_SIMD}" STREQUAL "sse")
|
elseif("${X86_64_SIMD}" STREQUAL "sse")
|
||||||
target_compile_definitions(nnacl_mid PRIVATE ENABLE_SSE)
|
target_compile_definitions(nnacl_mid PRIVATE ENABLE_SSE)
|
||||||
elseif("${X86_64_SIMD}" STREQUAL "avx")
|
elseif("${X86_64_SIMD}" STREQUAL "avx")
|
||||||
target_compile_definitions(nnacl_mid PRIVATE ENABLE_SSE ENABLE_AVX ENABLE_AVX512)
|
target_compile_definitions(nnacl_mid PRIVATE ENABLE_SSE ENABLE_AVX)
|
||||||
|
elseif("${X86_64_SIMD}" STREQUAL "avx512")
|
||||||
|
target_compile_definitions(nnacl_mid PRIVATE ENABLE_AVX512)
|
||||||
target_compile_options(nnacl_mid PRIVATE -mavx512f)
|
target_compile_options(nnacl_mid PRIVATE -mavx512f)
|
||||||
endif()
|
endif()
|
||||||
target_compile_options(nnacl_mid PRIVATE -fPIC)
|
target_compile_options(nnacl_mid PRIVATE -fPIC)
|
||||||
|
|
Loading…
Reference in New Issue