MNN主库

环境要求

  • Microsoft Visual Studio (>=2017)
  • cmake(>=3.13)
  • powershell
  • Ninja (构建工具,比nmake更快)

    具体步骤

  • 64位编译:在设置中找到vcvars64.bat(适用于 VS 2017 的 x64 本机工具命令提示)并单击,打开VS编译x64架构程序的虚拟环境

  • 32位编译:在设置中找到vcvarsamd64_x86.bat(VS 2017的 x64_x86 交叉工具命令提示符)并单击,打开VS交叉编译x86架构程序的虚拟环境 ```powershell cd /path/to/MNN powershell # 运行该命令从cmd环境进入powershell环境,后者功能更强大

./schema/generate.ps1

CPU, 64位编译

.\package_scripts\win\build_lib.ps1 -path MNN-CPU/lib/x64

CPU, 32位编译

.\package_scripts\win\build_lib.ps1 -path MNN-CPU/lib/x86

CPU+OpenCL+Vulkan, 64位编译

.\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x64 -backends “opencl,vulkan”

CPU+OpenCL+Vulkan, 32位编译

.\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x86 -backends “opencl,vulkan”

  1. <a name="9o45F"></a>
  2. ## MNN opencl支持
  3. <a name="At5ff"></a>
  4. ### 环境要求
  5. - (可选)下载GPU Caps Viewer,你可以通过这个工具来查看本机设备的详细信息(opencl、opengl、vulkan等)
  6. <a name="I75Uw"></a>
  7. ### 驱动和sdk准备
  8. - SDK
  9. [https://github.com/GPUOpen-LibrariesAndSDKs/OCL-SDK/releases](https://github.com/GPUOpen-LibrariesAndSDKs/OCL-SDK/releases) 将opencl sdk目录的路径加到AMDAPPSDKROOT环境变量
  10. - AMD Radeon
  11. [https://www.amd.com/zh-hans/support](https://www.amd.com/zh-hans/support)
  12. - NVIDIA
  13. [https://developer.nvidia.com/opencl](https://developer.nvidia.com/opencl)
  14. - 其他待补充
  15. <a name="kCSkd"></a>
  16. ### 编译MNN opencl库
  17. ```powershell
  18. # CPU+OpenCL, 64位编译
  19. .\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x64 -backends opencl
  20. # CPU+OpenCL, 32位编译
  21. .\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x86 -backends opencl

MNN vulkan支持

驱动和sdk准备

  • Vulkan SDK

下载链接:https://vulkan.lunarg.com/ ,安装完毕后,将Vulkan SDK路径加入VULKAN_SDK环境变量,以备cmake查找

  • 驱动

AMD Radeon:https://community.amd.com/community/gaming/blog/2016/02/16/radeon-gpus-are-ready-for-the-vulkan-graphics-api ,其中列举了驱动下载位置和支持列表

编译MNN vulkan库

  1. # CPU+Vulkan, 64位编译
  2. .\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x64 -backends vulkan
  3. # CPU+Vulkan, 32位编译
  4. .\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x86 -backends vulkan