本教程详细记录了在 ubuntu 上安装腾讯推理框架 ncnn 的方法。
1、安装依赖
sudo apt install build-essential git cmake libprotobuf-dev protobuf-compiler libvulkan-dev vulkan-utils也需依赖opencv,这个源码编吧,可以看教程《【经验分享】ubuntu源码编译opencv》(https://blog.csdn.net/weixin_42405819/article/details/117931668?spm=1001.2014.3001.5501)。
2、编译
cd ncnn
mkdir build
cd build
cmkae -DCMAKE_BUILD_TYPE=Release ..
make -j32
3、测试
cd ../examples
../build/examples/squeezenet ../images/256-ncnn.png

正常输出说明已经安装成功。
测试一下性能。
cd ../benchmark
## 第四个参数是 GPU deive index
## 若要使用 CPU,设置第五个参数为 -1
../build/benchmark/benchncnn 10 32 0 0

到目前都很顺利,如果你以为这样就结束了,那就错了哈哈。
接着。。
4、打开 Vulkun
先说一下什么是 Vulkun,Vulkan 是一个跨平台的 2D 和 3D 绘图应用程序 API,其作者科纳斯组织(Khronos Group)最先把 VulkanAPI 称为 “下一代OpenGL行动” “glNext”。
安装 Vulkun。
wget https://sdk.lunarg.com/sdk/download/1.2.182.0/linux/vulkansdk-linux-x86_64-1.2.182.0.tar.gz
tar -xvf vulkansdk-linux-x86_64-1.2.182.0.tar.gz
vim ~/.bashrc
## 加入
export VULKAN_SDK=/path/to/1.2.182.0/x86_64
## 使生效
source ~/.bashrc
重新编译:
cd ncnn/build
rm -rf ./*
cmake -DCMAKE_BUILD_TYPE=Release -DNCNN_VULKAN=ON -DNCNN_SYSTEM_GLSLANG=ON -DNCNN_BUILD_EXAMPLES=ON ..
这个时候你可能会出现如下报错:

不要慌,去 CMakeLists.txt 的 244 行看看:

很明显吧,找不到 ncnn/glslang/CMakeLists.txt,回头看看 ncnn/glslang 是空的:

好办,如下操作:
cd ncnn
git clone https://github.com/KhronosGroup/glslang.git
## 如果你 github 网速慢的话,可以用这个
git clone https://gitee.com/jeremyjj/glslang.git
这样你的 ncnn/glslang 就有东西了:

来,让我们重新编。
cd ncnn/build
rm -rf ./*
cmake -DCMAKE_BUILD_TYPE=Release -DNCNN_VULKAN=ON -DNCNN_SYSTEM_GLSLANG=ON -DNCNN_BUILD_EXAMPLES=ON ..
make -j32
不出意外的话就 OK 了(开32个线程编译贼快)。

你同样可以跑下示例验证一下:
cd ../examples
../build/examples/squeezenet ../images/256-ncnn.png

收工~
声明:转载请说明出处
扫描下方二维码关注【极智视界】公众号,获取更多实践项目资源和读书分享,让我们用极致+极客的心态来迎接AI !

文章转载自极智视界,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




