-
Notifications
You must be signed in to change notification settings - Fork 704
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
🔥Windows10 VS2019 CUDA 11.1 配置lite.ai.toolkit库 #207
Comments
@zhanghongyong123456 哇~ 简直太赞啦!!!太感谢这位同学详细的windows配置教程啦!!!我要把这个issue置顶! |
|
我按照这个教程完成了,但在RVM中生成的EXE点开后闪退。还有我在test_lite_rvm.cpp中设置了断点,可实际上程序根本没有运行到test_lite()。请问有实现成功的人帮助下吗 |
你要确保所有的库都能链接上,比如要拷贝到exe相同的目录,并且模型文件已经下载好放在对应的位置,具体细节请参考rvm示例工程的C++代码。 |
编译时提示
解决办法:将 vulkan 安装目录下 Include 文件夹中的 vulkan 文件夹整个复制到 lite.ai.toolkit 目录下(就像复制 onnxruntime 的 include 文件夹那样)。 |
这个直接在包含目录下添加vukan文件的include就可以了吧, |
求助!!!!请问一下,这个Valkan在教程中哪里有要求下载呀?如果我只用onnx的模型,其他都不用的话,我最后应该只需要配opencv和onnx吧?生成lite.ai.toolkit的时候报错了TT |
在1.4 配置ncnn 参考链接里面呢, |
感谢提醒,这是lite.ai.toolkit TNN版本的已知的bug,会导致在在windows下发生内存泄漏,mac和linux可以正常运行。正在修复中... 相关issue可见: |
一定要用vs2019吗,我用vs2017一堆的错误 |
都是什么错误,我电脑只安装了2019,没有17所以没测试过 |
重装了2019就好了。。楼主c++代码用到的语法太高级了。。 |
请教一下,不调用GPU,只CPU用。只用onnxruntime应该怎么配置 |
编译出这三个文件后 怎么用呢? |
onnxruntime 1.8.1 1.8.2 1.11.0 以上都有cuda/cpu_provider_factory.h |
“lite_rvm.exe”(Win32): 已加载“C:\lite.ai.toolkit-main\build\lite.ai.toolkit\bin\Debug\lite_rvm.exe”。已加载符号。 编译好了也复制过去了gpu运行还是报错 |
不支持Debug,只支持release |
编译成功后,怎么进行代码调试啊?大佬可有时间,解答一下 |
This issue is stale because it has been open for 30 days with no activity. |
This issue was closed because it has been inactive for 7 days since being marked as stale. |
补充说明
首先,非常感谢 @zhanghongyong123456 同学这份详细的windows下配置lite.ai.toolkit 的教程~ 简直太热心啦~ 用windows的同学可以先看这份教程进行配置~ 以及以下相关issues的讨论。
References for Windows10 users
windows下的使用可以参考以下这几个讨论(some references for windows users)
另外,是win32和system32,目前lite.ai.toolkit没有考虑32位的系统。还有就是在windows下编译完之后,需要手动把依赖库都拷贝到build/lite.ai.toolkit/lib和build/lite.ai.toolkit/bin,并且检查修改下模型文件的路径,比如说路径的反斜杠之类的。(Also, for win32 and system32, currently, lite.ai.toolkit does not consider 32-bit systems. Also, after compiling under Windows, you need to manually copy the dependent libraries to build/lite.ai.toolkit/lib and build/lite.ai.toolkit/bin, and check and modify the path of the model file, for example, The backslash of the path.)
Search issues about windows
Windows10 VS2019 CUDA 11.1 配置 lite.ai.toolkit库
作者: @zhanghongyong123456
以下是配置教程原文。
第一步:相关依赖库的配置:
配置:
1.1 Opencv:
按照这篇博客,下载官方编译好的库解压安装,添加环境变量;我是用 opencv 4.5.5
https://blog.csdn.net/xgocn/article/details/104170088
1.2 配置 Onnxruntime:
按照这篇博客就行操作即可:
https://blog.csdn.net/qq_44747572/article/details/121340735?spm=1001.2014.3001.5501
这里注意自己CUDA的版本号,我采用的 onnxruntime-win-x64-gpu-1.9.0官方编译版本
1.3 配置TNN
直接下载安装包解压即可 github下载即可 :
https://github.com/Tencent/TNN/releases/tag/v0.3.0
https://github.com/Tencent/TNN/releases/download/v0.3.0/tnn-v0.3.0-windows.zip
1.4 github下载源码,自己编译MNN
按照这篇博客操作即可,,可以选debug 或者release 版本(可以在同一个文件夹编译两个版本),至于是否需要切换语言,可以先编译看看是否成功,不成功再去设置语言
https://blog.csdn.net/ouyangfushu/article/details/96476245
直接打开x64 Native Tools Command Prompt for VS 2019 编译即可,博客第一步、第二步我没有进行操作,也可以成功
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release .. 只需要设置 Debug 或者Release 即可。后续采用release 版本
1.4 配置 ncnn,参考这个链接
https://zhuanlan.zhihu.com/p/391609325
特别注意:在配置Protobuf时候,我在一个源文件夹下先后进行Debug以及 Release编译,即使这里不出问题,后续在编译的时候也会报错,所以如果想要配置release以及debug版本,个人强烈建议在两个源文件夹下进行分别编译;同样的在后续下载NCNN源码进行debug和release版本编译时候,也要创建两个源文件分别进行分别编译。
在编译Vulkan时候,需要配置环境变量,否则后续在编译ncnn时候需要设置 set VULKAN_SDK=C:/VulkanSDK/1.3.204.0 后面跟你VulkanSDK的安装的路径,像下图这样
1.5 开始配置 lite.ai.toolkit 库
1.5.1拉取项目库:
1.5.2 替换项目子库
opencv:
tnn:
onnxruntime:需要下载你自己对应版本的源码,
我这里使用的onnxruntime-win-x64-gpu-1.9.0,所以下载的对应的源码进行替换,
MNN:
源码下include下的MNN文件夹
ncnn:
自己编译的build/install/include/ncnn文件夹
1.5.3 复制子库对应的lib以及dll到源文件夹:
这个将lite.ai.toolkit/lib文件夹下,(这里我第一次没有windows子文件夹,我忘记是我删除了还是后更新的,后面发现有子文件夹,我就在lib文件下复制了一份lib及dll库,他对应的子文件夹windows也复制了一份)
opencv:
tnn:
onnxruntime:
MNN:我这里拷贝的是release版本,后续也是编译的MinSizeRel版本
ncnn:
protobuf :这个也复制了(因为编译错误很多次,所以就把用到的都复制了)
总文件夹:
1.5.4 配置
修改opencv配置:
1.5.5 cmake:
方法一:
法二:
cmake GUI
1.5.6 打开项目,准备编译:
配置 头文件:
配置 lib路径:
配置lib文件名:
这是我的lib名:
opencv_world455.lib
onnxruntime.lib
MNN.lib
ncnn.lib
TNN.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
comdlg32.lib
advapi32.lib
libprotobuf.lib
vulkan-1.lib
glslang.lib
SPIRV.lib
OGLCompiler.lib
OSDependent.lib
MachineIndependent.lib
GenericCodeGen.lib
添加error解决:
1.5.7 生成:
1.5.8 结束
可能有不妥当地方,欢迎大佬指出:
The text was updated successfully, but these errors were encountered: