pytorch之libtorch(C++)

libtorch:
从这里选择库下载:

https://pytorch.org/get-started/locally/

 相关测试参考代码:

libtorch-yolov5: https://github.com/yasenh/libtorch-yolov5
yolov5: https://github.com/ultralytics/yolov5z

注意:   需要转换为 yolov5s.torchscript.pt 最新版本中不需要修改export.py,需要指定CPU还是GPU,

GPU与CPU生成的 script.pt不能共用(不知道原因)

 我是windows系统vs2019, cmake gui来配置;

其中,系统拥有8张GPU显卡, 如何单独使用GPU显卡请修改:

//判断CUDA是否可以使用与数量
std::cout << "cuda::is_available():" << torch::cuda::is_available() << std::endl;
std::cout << "cuda::cudnn_is_available():" << torch::cuda::cudnn_is_available() << std::endl;
std::cout << "cuda::device_count():" << torch::cuda::device_count() << std::endl;

//固定到那张GPU显卡
#include "cuda_runtime_api.h"
int gpu_id; //从0开始,我的是8张固: 0~8
cudaSetDevice(gpu_id);

//请修改Detector::Detector中的部分:

//加载到那种显卡中
module_ = torch::jit::load(model_path, torch::Device(torch::DeviceType::CUDA, index));

//我最开始后面的没有写,以为 module_.to(device_); 可以,结果报错:Expected all tensors to be on the same device, but found at least two devices, cuda:1 and cuda:0!
//后面修改上面即可实现了GPU的选择;
//Pytorch中与 CUDA_VISIBLE_DEVICES 有关;

 我发现,在多线程时,GPU利用率很低,但是处理花的时间很长不知道为什么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值