pytorch->onnx->MNN后耗时倍增
pytorch模型在2060显卡上跑11ms,转MNN后在opencl单独测试runSession()耗时36+ms,想请教一下导致这种情况可能原因是?
nvidia 显卡上的 tensorcore 基于 opencl 无法使用 建议用 MNN-CUDA 跑
nvidia 显卡上的 tensorcore 基于 opencl 无法使用 建议用 MNN-CUDA 跑
感谢大佬回复!多次实验发现确实是opencl的原因,已经在做调整
nvidia 显卡上的 tensorcore 基于 opencl 无法使用 建议用 MNN-CUDA 跑
cuda编译不成功怎么破,我是安装语雀的教程把类型改成cuda: .\package_scripts\win\build_lib.ps1 -path MNN-cuda/lib/x64 -backends cuda 以下是编译日志:
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 x64
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib\x64\lib
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 x64 *** cleaning up *** *** generating fbs under default *** *** done ***
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib\x64\lib\x64\Debug\Dynamic
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 MD d----- 2022/9/23 17:44 MT
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib\x64\lib\x64\Debug\Static
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 MD d----- 2022/9/23 17:44 MT
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib\x64\lib\x64\Release\Dynamic
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 MD d----- 2022/9/23 17:44 MT
目录: D:\software\MNN_2.1.0\MNN-2.1.0_\MNN-cuda\lib\x64\lib\x64\Release\Static
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 MD d----- 2022/9/23 17:44 MT
目录: D:\software\MNN_2.1.0\MNN-2.1.0_
Mode LastWriteTime Length Name
d----- 2022/9/23 17:44 build
Build MNN (CPU cuda) Debug/Dynamic/MT
-- The C compiler identification is MSVC 19.16.27045.0 -- The CXX compiler identification is MSVC 19.16.27045.0 -- The ASM compiler identification is MSVC -- Found assembler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found PythonInterp: D:/software/Anaconda/python.exe (found version "3.7") -- Use Threadpool, forbid openmp -- >>>>>>>>>>>>> -- MNN BUILD INFO: -- System: Windows -- Processor: AMD64 -- Version: 2.1.0 -- Metal: OFF -- OpenCL: OFF -- OpenGL: OFF -- Vulkan: OFF -- ARM82: OFF -- oneDNN: OFF -- TensorRT: OFF -- CoreML: OFF -- CUDA: ON -- OpenMP: OFF -- BF16: -- ThreadPool: ON -- Hidden: FALSE -- Build Path: D:/software/MNN_2.1.0/MNN-2.1.0_/build -- WIN_USE_ASM: -- AMD64: Open SSE -- MNN_AVX512:ON -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - not found -- Found Threads: TRUE CMake Warning (dev) at D:/software/cmake/share/cmake-3.24/Modules/FindCUDA.cmake:690 (if): Policy CMP0054 is not set: Only interpret if() arguments as variables or keywords when unquoted. Run "cmake --help-policy CMP0054" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Quoted variables like "MSVC" will no longer be dereferenced when the policy is set to NEW. Since the policy is not set the OLD behavior will be used. Call Stack (most recent call first): source/backend/cuda/CMakeLists.txt:2 (find_package) This warning is for project developers. Use -Wno-dev to suppress it.
-- Found CUDA: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.2 (found suitable version "10.2", minimum required is "9.0") -- Autodetected CUDA architecture(s): 7.5 -- Enabling CUDA support (version: 10.2, archs: sm_75) -- message -D_FORCE_INLINES -Wno-deprecated-gpu-targets -w -O0 -Xcompiler /FS -gencode arch=compute_70,code=sm_70 -gencode arch=compute_75,code=sm_75 !!!!!!!!!!! -- Configuring done -- Generating done -- Build files have been written to: D:/software/MNN_2.1.0/MNN-2.1.0_/build [179/350] Building NVCC (Device) object source/backend/cud...execution/MNN_CUDA_generated_ConvDepthWiseExecution.cu.obj ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvDepthWiseExecution.cu ConvDepthWiseExecution.cu [180/350] Building NVCC (Device) object source/backend/cud...DA.dir/execution/MNN_CUDA_generated_BinaryExecution.cu.obj BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? BinaryExecution.cu BinaryExecution.cu [181/350] Building NVCC (Device) object source/backend/cud...N_CUDA.dir/execution/MNN_CUDA_generated_ImageColumn.cu.obj ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ImageColumn.cu ImageColumn.cu [182/350] Building NVCC (Device) object source/backend/cud...DA.dir/execution/MNN_CUDA_generated_InterpExecution.cu.obj InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? InterpExecution.cu InterpExecution.cu [183/350] Building NVCC (Device) object source/backend/cud...DA.dir/execution/MNN_CUDA_generated_ArgMaxExecution.cu.obj ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ArgMaxExecution.cu ArgMaxExecution.cu [184/350] Building NVCC (Device) object source/backend/cud....dir/execution/MNN_CUDA_generated_GatherV2Execution.cu.obj GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? GatherV2Execution.cu GatherV2Execution.cu [185/350] Building NVCC (Device) object source/backend/cud...dir/execution/MNN_CUDA_generated_LayerNormExecution.cu.obj LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? LayerNormExecution.cu LayerNormExecution.cu [186/350] Building NVCC (Device) object source/backend/cud...CUDA.dir/execution/MNN_CUDA_generated_PoolExecution.cu.obj PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PoolExecution.cu PoolExecution.cu [187/350] Building NVCC (Device) object source/backend/cud...ution/MNN_CUDA_generated_DeconvSingleInputExecution.cu.obj DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? DeconvSingleInputExecution.cu DeconvSingleInputExecution.cu [188/350] Building NVCC (Device) object source/backend/cud.../execution/MNN_CUDA_generated_ConvWinogradExecution.cu.obj ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvWinogradExecution.cu ConvWinogradExecution.cu [190/350] Building NVCC (Device) object source/backend/cud...UDA.dir/execution/MNN_CUDA_generated_PReLUExecution.cu.obj PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? PReLUExecution.cu PReLUExecution.cu [191/350] Building NVCC (Device) object source/backend/cud...DA.dir/execution/MNN_CUDA_generated_MatMulExecution.cu.obj MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? MatMulExecution.cu MatMulExecution.cu [192/350] Building NVCC (Device) object source/backend/cud...ecution/MNN_CUDA_generated_ConvSingleInputExecution.cu.obj ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvSingleInputExecution.cu ConvSingleInputExecution.cu [201/350] Building NVCC (Device) object source/backend/cud...r/execution/MNN_CUDA_generated_TensorCoreGemmPacked.cu.obj TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemmPacked.cu TensorCoreGemmPacked.cu [205/350] Building NVCC (Device) object source/backend/cud...UDA.dir/execution/MNN_CUDA_generated_TensorCoreGemm.cu.obj TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? TensorCoreGemm.cu TensorCoreGemm.cu [211/350] Building NVCC (Device) object source/backend/cud...dir/execution/MNN_CUDA_generated_ScatterNdExecution.cu.obj ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScatterNdExecution.cu ScatterNdExecution.cu [212/350] Building NVCC (Device) object source/backend/cud...DA.dir/execution/MNN_CUDA_generated_SelectExecution.cu.obj SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SelectExecution.cu SelectExecution.cu [217/350] Building NVCC (Device) object source/backend/cud...UDA.dir/execution/MNN_CUDA_generated_ScaleExecution.cu.obj ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ScaleExecution.cu ScaleExecution.cu [218/350] Building NVCC (Device) object source/backend/cud...MNN_CUDA.dir/execution/MNN_CUDA_generated_Transpose.cu.obj Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Transpose.cu Transpose.cu [224/350] Building NVCC (Device) object source/backend/cud...A.dir/execution/MNN_CUDA_generated_SoftmaxExecution.cu.obj SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? SoftmaxExecution.cu SoftmaxExecution.cu [245/350] Building NVCC (Device) object source/backend/cud...es/MNN_CUDA.dir/execution/MNN_CUDA_generated_Raster.cu.obj Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? Raster.cu Raster.cu [254/350] Building NVCC (Device) object source/backend/cud...UDA.dir/execution/MNN_CUDA_generated_UnaryExecution.cu.obj UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? UnaryExecution.cu UnaryExecution.cu [270/350] Building NVCC (Device) object source/backend/cud...dir/execution/MNN_CUDA_generated_ReductionExecution.cu.obj ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ReductionExecution.cu ReductionExecution.cu [290/350] Building NVCC (Device) object source/backend/cud...r/execution/MNN_CUDA_generated_ConvCutlassExecution.cu.obj ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu cl: 鍛戒护琛?warning D9025 :姝e湪閲嶅啓鈥?W3鈥?鐢ㄢ€?w鈥? ConvCutlassExecution.cu ConvCutlassExecution.cu [297/350] Building CXX object CMakeFiles\MNNTransform.dir\source\geometry\GeometryTopK.cpp.obj D:\software\MNN_2.1.0\MNN-2.1.0_\source\geometry\GeometryTopK.cpp(19): warning C4477: “printf”: 格式字符串“%lu”需要 类型“unsigned long”的参数,但可变参数 1 拥有了类型“unsigned int64” D:\software\MNN_2.1.0\MNN-2.1.0\source\geometry\GeometryTopK.cpp(19): note: 请考虑在格式字符串中使用“%zu” D:\software\MNN_2.1.0\MNN-2.1.0\source\geometry\GeometryTopK.cpp(19): warning C4477: “printf”: 格式字符串“%lu”需要 类型“unsigned long”的参数,但可变参数 2 拥有了类型“unsigned int64” D:\software\MNN_2.1.0\MNN-2.1.0\source\geometry\GeometryTopK.cpp(19): note: 请考虑在格式字符串中使用“%zu” [300/350] Building CXX object source\backend\cuda\CMakeFiles\MNN_CUDA.dir\core\runtime\CUDARuntime.cpp.obj D:\software\MNN_2.1.0\MNN-2.1.0\source\backend\cuda\core\runtime\CUDARuntime.cpp(22): warning C4005: “STR”: 宏重定义 D:\software\MNN_2.1.0\MNN-2.1.0_\include\MNN/MNNDefine.h(69): note: 参见“STR”的前一个定义 [326/350] Building CXX object tools\train\CMakeFiles\MNNTrain.dir\source\transformer\Transformer.cpp.obj d:\software\mnn_2.1.0\mnn-2.1.0_\tools\train\source\transformer\transformer.cpp(98) : warning C4700: 使用了未初始化的局 部变量“c” [350/350] Linking CXX shared library MNN.dll FAILED: MNN.dll MNN.lib cmd.exe /C "cd . && D:\software\cmake\bin\cmake.exe -E vs_link_dll --intdir=CMakeFiles\MNN.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe --manifests -- C:\PROGRA~2\MIB055~1\2017\COMMUN~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\MNN.rsp /out:MNN.dll /implib:MNN.lib /pdb:MNN.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL /IGNORE:4049,4217 /WHOLEARCHIVE:D:/software/MNN_2.1.0/MNN-2.1.0_/build/source/backend/cuda/MNN_CUDA.lib && cd ." LINK Pass 1: command "C:\PROGRA~2\MIB055~1\2017\COMMUN~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\MNN.rsp /out:MNN.dll /implib:MNN.lib /pdb:MNN.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL /IGNORE:4049,4217 /WHOLEARCHIVE:D:/software/MNN_2.1.0/MNN-2.1.0_/build/source/backend/cuda/MNN_CUDA.lib /MANIFEST /MANIFESTFILE:CMakeFiles\MNN.dir/intermediate.manifest CMakeFiles\MNN.dir/manifest.res" failed (exit code 1319) with the following output: MNN_CUDA.lib(MNN_CUDA_generated_UnaryExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_UnaryExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Transpose.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不 匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Transpose.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemmPacked.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemmPacked.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemm.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemm.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SoftmaxExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值 “0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SoftmaxExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SelectExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SelectExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScatterNdExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScatterNdExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScaleExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScaleExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ReductionExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ReductionExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Raster.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Raster.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PoolExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0 ”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PoolExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PReLUExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PReLUExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_MatMulExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_MatMulExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_LayerNormExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_LayerNormExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_InterpExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_InterpExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ImageColumn.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0” 不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ImageColumn.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_GatherV2Execution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_GatherV2Execution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_DeconvSingleInputExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不 匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_DeconvSingleInputExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvWinogradExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvWinogradExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvSingleInputExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹 配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvSingleInputExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvDepthWiseExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配 项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvDepthWiseExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvCutlassExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvCutlassExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_BinaryExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_BinaryExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ArgMaxExecution.cu.obj) : error LNK2038: 检测到“ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ArgMaxExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) 正在创建库 MNN.lib 和对象 MNN.exp LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library MNN.dll : fatal error LNK1319: 检测到 48 个不匹配项 ninja: build stopped: subcommand failed. [0/1] Re-running CMake... -- Use Threadpool, forbid openmp -- >>>>>>>>>>>>> -- MNN BUILD INFO: -- System: Windows -- Processor: AMD64 -- Version: 2.1.0 -- Metal: OFF -- OpenCL: OFF -- OpenGL: OFF -- Vulkan: OFF -- ARM82: OFF -- oneDNN: OFF -- TensorRT: OFF -- CoreML: OFF -- CUDA: ON -- OpenMP: OFF -- BF16: OFF -- ThreadPool: ON -- Hidden: FALSE -- Build Path: D:/software/MNN_2.1.0/MNN-2.1.0/build -- WIN_USE_ASM: -- AMD64: Open SSE -- MNN_AVX512:ON CMake Warning (dev) at D:/software/cmake/share/cmake-3.24/Modules/FindCUDA.cmake:690 (if): Policy CMP0054 is not set: Only interpret if() arguments as variables or keywords when unquoted. Run "cmake --help-policy CMP0054" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Quoted variables like "MSVC" will no longer be dereferenced when the policy is set to NEW. Since the policy is not set the OLD behavior will be used. Call Stack (most recent call first): source/backend/cuda/CMakeLists.txt:2 (find_package) This warning is for project developers. Use -Wno-dev to suppress it.
-- Autodetected CUDA architecture(s): 7.5 -- Enabling CUDA support (version: 10.2, archs: sm_75) -- message -D_FORCE_INLINES -Wno-deprecated-gpu-targets -w -O0 -Xcompiler /FS -gencode arch=compute_70,code=sm_70 -gencode arch=compute_75,code=sm_75 !!!!!!!!!!! -- Configuring done -- Generating done -- Build files have been written to: D:/software/MNN_2.1.0/MNN-2.1.0_/build [1/1] Linking CXX shared library MNN.dll FAILED: MNN.dll MNN.lib cmd.exe /C "cd . && D:\software\cmake\bin\cmake.exe -E vs_link_dll --intdir=CMakeFiles\MNN.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe --manifests -- C:\PROGRA~2\MIB055~1\2017\COMMUN~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\MNN.rsp /out:MNN.dll /implib:MNN.lib /pdb:MNN.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL /IGNORE:4049,4217 /WHOLEARCHIVE:D:/software/MNN_2.1.0/MNN-2.1.0_/build/source/backend/cuda/MNN_CUDA.lib && cd ." LINK Pass 1: command "C:\PROGRA~2\MIB055~1\2017\COMMUN~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\MNN.rsp /out:MNN.dll /implib:MNN.lib /pdb:MNN.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL /IGNORE:4049,4217 /WHOLEARCHIVE:D:/software/MNN_2.1.0/MNN-2.1.0_/build/source/backend/cuda/MNN_CUDA.lib /MANIFEST /MANIFESTFILE:CMakeFiles\MNN.dir/intermediate.manifest CMakeFiles\MNN.dir/manifest.res" failed (exit code 1319) with the following output: MNN_CUDA.lib(MNN_CUDA_generated_UnaryExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_UnaryExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Transpose.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不 匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Transpose.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemmPacked.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemmPacked.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemm.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_TensorCoreGemm.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SoftmaxExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值 “0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SoftmaxExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SelectExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_SelectExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScatterNdExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScatterNdExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScaleExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ScaleExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ReductionExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ReductionExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Raster.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_Raster.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PoolExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0 ”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PoolExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PReLUExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_PReLUExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_MatMulExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_MatMulExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_LayerNormExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_LayerNormExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_InterpExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_InterpExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ImageColumn.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0” 不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ImageColumn.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_GatherV2Execution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_GatherV2Execution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_DeconvSingleInputExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不 匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_DeconvSingleInputExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvWinogradExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvWinogradExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvSingleInputExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹 配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvSingleInputExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvDepthWiseExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配 项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvDepthWiseExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvCutlassExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ConvCutlassExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_BinaryExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_BinaryExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ArgMaxExecution.cu.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(Backend.cpp.obj 中) MNN_CUDA.lib(MNN_CUDA_generated_ArgMaxExecution.cu.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MTd_StaticDebug”(Backend.cpp.obj 中) 正在创建库 MNN.lib 和对象 MNN.exp LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library MNN.dll : fatal error LNK1319: 检测到 48 个不匹配项 ninja: build stopped: subcommand failed.
看上去只编 Release 版本就好了