MNN主库
环境要求
- Microsoft Visual Studio (>=2017)
- cmake(>=3.13)
- powershell
-
具体步骤
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”
<a name="9o45F"></a>
## MNN opencl支持
<a name="At5ff"></a>
### 环境要求
- (可选)下载GPU Caps Viewer,你可以通过这个工具来查看本机设备的详细信息(opencl、opengl、vulkan等)
<a name="I75Uw"></a>
### 驱动和sdk准备
- SDK
[https://github.com/GPUOpen-LibrariesAndSDKs/OCL-SDK/releases](https://github.com/GPUOpen-LibrariesAndSDKs/OCL-SDK/releases) 将opencl sdk目录的路径加到AMDAPPSDKROOT环境变量
- AMD Radeon
[https://www.amd.com/zh-hans/support](https://www.amd.com/zh-hans/support)
- NVIDIA
[https://developer.nvidia.com/opencl](https://developer.nvidia.com/opencl)
- 其他待补充
<a name="kCSkd"></a>
### 编译MNN opencl库
```powershell
# CPU+OpenCL, 64位编译
.\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x64 -backends opencl
# CPU+OpenCL, 32位编译
.\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库
# CPU+Vulkan, 64位编译
.\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x64 -backends vulkan
# CPU+Vulkan, 32位编译
.\package_scripts\win\build_lib.ps1 -path MNN-CPU-OPENCL/lib/x86 -backends vulkan