Libtorch libtorch详解

1. 必要软件

  • wget
  • unzip
  • python3
  • pip3
  • cmake
  • gcc (or clang)
  • make (or ninja)

软件版本尽量用新的。

2. 安装 PyTorch

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cpu

推荐使用 miniconda 管理 python 环境。

3. 下载解压 LibTorch

wget https://download.pytorch.org/libtorch/nightly/cpu/libtorch-shared-with-deps-latest.zip
unzip libtorch-shared-with-deps-latest.zip

注意1:本教程适用 Linux 系统,Windows 等我有时间,MacOS 等我有钱。

注意2:以上均是 CPU 版本,有 GPU 并配置了 CUDA 的土豪移步官网根据版本下载。

4. 配置环境

三种方式(影响范围由大到小):

  1. 将讲解压目录 /path/to/libtorch(注意替换)添加到系统 PATH 变量中:
# 临时使用
export PATH=/path/to/libtorch:$PATH

# 永久使用
echo "export PATH=/path/to/libtorch:\$PATH" >> ~/.bashrc && . ~/.bashrc
  1. 设置环境变量 Torch_ROOT,方法参考上面。
  2. CMakeLists.txt 中通过 set 函数临时设置。
  3. 执行 cmake 命令的时候,设置参数 -DCMAKE_PREFIX_PATH=/path/to/libtorch

推荐使用第2种。

5. 运行 demo

下载项目

git clone https://github.com/clearhanhui/LearnLibTorch.git
cd LearnLibTorch/chap1/

使用 make 构建

mkdir build-make && cd build-make
cmake .. 
make
./HelloWorld

使用 ninja 构建

mkdir build-ninja && cd build-ninja
cmake .. -G Ninja
ninja -v
./HelloWorld

输出:

 0  0  0
 0  0  0
[ CPUFloatType{2,3} ]

Welcome to LibTorch!

教程来源于Github,感谢clearhanhui大佬的无私奉献,致敬!

技术教程推荐

持续交付36讲 -〔王潇俊〕

OAuth 2.0实战课 -〔王新栋〕

Go 语言项目开发实战 -〔孔令飞〕

如何落地业务建模 -〔徐昊〕

零基础入门Spark -〔吴磊〕

Tony Bai · Go语言第一课 -〔Tony Bai〕

徐昊 · TDD项目实战70讲 -〔徐昊〕

云原生架构与GitOps实战 -〔王炜〕

结构思考力 · 透过结构看问题解决 -〔李忠秋〕