searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

如何用C++优雅地训练一个模型(一):Libtorch+Visual Studio配置

2023-07-24 04:28:24
116
0

介绍

本文首先介绍如何在Windows环境下对Libtorch环境进行配置,经过配置之后可以在C++程序中实现Pytorch的功能。


环境

Windows10平台

显卡RTX2080super

与20系显卡对应版本的CUDA和CUDNN

visual studio 2017 及以上

opencv 4.5.0

libtorch 1.7

注意,libtorch版本不能低于pytorch版本,visual studio 2015及之前的版本在配置libtorch时会报缺少符号错误,原因是微软的VC140无法编译libtorch。


Visual Studio 

选择2017及以上版本,2015以下版本不支持libtorch。安装教程请参考VS2017安装教程。安装时,在VS安装器的工作负载选择页面勾选“使用C++的桌面开发”选项。


OpenCV

无特殊版本要求,尽量选择OpenCV 4以上的稳定版本。安装时尽量把路径设置为英文路径。将OpenCV中的\build\x64\vc14\bin文件夹配置到环境变量中.


Libtorch

Libtorch版本一般不低于模型训练环境,请按CUDA版本选择相应的Libtorch release版本,下载页面见Libtorch官网

下载解压后得到如下文件

将libtorch中的bin文件夹配置到环境变量中。


配置项目属性

在VS2017中新建一个空项目,配置release x64的属性页。

1、添加include

libtorch\include\torch\csrc\api\include
libtorch\include
opencv\build\include

到C/C++->General->Additional Include Directories

2、添加lib

libtorch\lib
opencv\build\x64\vc14\lib

到Linker->General->Additional library Directories

3、添加依赖库的文件名:Linker->input->Additional Dependencies

opencv_world450.lib
asmjit.lib
c10.lib
c10d.lib
c10_cuda.lib
caffe2_detectron_ops_gpu.lib
caffe2_module_test_dynamic.lib
caffe2_nvrtc.lib
clog.lib
cpuinfo.lib
dnnl.lib
fbgemm.lib
gloo.lib
gloo_cuda.lib
libprotobuf-lite.lib
libprotobuf.lib
libprotoc.lib
mkldnn.lib
torch.lib
torch_cpu.lib
torch_cuda.lib

验证配置结果

CPP代码如下

#include <iostream>
#include <torch/torch.h>
 
int main()
{
    
    torch::Tensor tensor = torch::rand({ 5,3 });
    std::cout << tensor << std::endl;
 
    return EXIT_SUCCESS;
}

配置无误的话,该函数会输出一个5行3列的张量,包含一组[0, 1)的随机数。

0条评论
0 / 1000
z****n
5文章数
0粉丝数
z****n
5 文章 | 0 粉丝
原创

如何用C++优雅地训练一个模型(一):Libtorch+Visual Studio配置

2023-07-24 04:28:24
116
0

介绍

本文首先介绍如何在Windows环境下对Libtorch环境进行配置,经过配置之后可以在C++程序中实现Pytorch的功能。


环境

Windows10平台

显卡RTX2080super

与20系显卡对应版本的CUDA和CUDNN

visual studio 2017 及以上

opencv 4.5.0

libtorch 1.7

注意,libtorch版本不能低于pytorch版本,visual studio 2015及之前的版本在配置libtorch时会报缺少符号错误,原因是微软的VC140无法编译libtorch。


Visual Studio 

选择2017及以上版本,2015以下版本不支持libtorch。安装教程请参考VS2017安装教程。安装时,在VS安装器的工作负载选择页面勾选“使用C++的桌面开发”选项。


OpenCV

无特殊版本要求,尽量选择OpenCV 4以上的稳定版本。安装时尽量把路径设置为英文路径。将OpenCV中的\build\x64\vc14\bin文件夹配置到环境变量中.


Libtorch

Libtorch版本一般不低于模型训练环境,请按CUDA版本选择相应的Libtorch release版本,下载页面见Libtorch官网

下载解压后得到如下文件

将libtorch中的bin文件夹配置到环境变量中。


配置项目属性

在VS2017中新建一个空项目,配置release x64的属性页。

1、添加include

libtorch\include\torch\csrc\api\include
libtorch\include
opencv\build\include

到C/C++->General->Additional Include Directories

2、添加lib

libtorch\lib
opencv\build\x64\vc14\lib

到Linker->General->Additional library Directories

3、添加依赖库的文件名:Linker->input->Additional Dependencies

opencv_world450.lib
asmjit.lib
c10.lib
c10d.lib
c10_cuda.lib
caffe2_detectron_ops_gpu.lib
caffe2_module_test_dynamic.lib
caffe2_nvrtc.lib
clog.lib
cpuinfo.lib
dnnl.lib
fbgemm.lib
gloo.lib
gloo_cuda.lib
libprotobuf-lite.lib
libprotobuf.lib
libprotoc.lib
mkldnn.lib
torch.lib
torch_cpu.lib
torch_cuda.lib

验证配置结果

CPP代码如下

#include <iostream>
#include <torch/torch.h>
 
int main()
{
    
    torch::Tensor tensor = torch::rand({ 5,3 });
    std::cout << tensor << std::endl;
 
    return EXIT_SUCCESS;
}

配置无误的话,该函数会输出一个5行3列的张量,包含一组[0, 1)的随机数。

文章来自个人专栏
学习随记
5 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0