本文件夹包含适用于 Linux ARM 架构(如 NVIDIA BlueField-3)的 libtorch 库文件。
libtorch 是 PyTorch 官方提供的 C++ API 库,可用于在 C++ 项目中进行深度学习推理和张量操作。
注意:本仓库使用 pytorch 源码自行编译生成,非官方发布版本。
lib/:包含所有.so和.a静态/动态库文件include/:头文件目录share/:CMake 配置等辅助文件
- 依赖安装
- 推荐使用 Git LFS 管理大文件:
sudo apt-get install git-lfs git lfs install
- 克隆本仓库:
git clone https://github.com/SJTU-DDST/ARM-Libtorch.git
- 可选
- 将仓库移动到
/opt目录下并改名为libtorch:sudo cp -r ARM-Libtorch /opt sudo ARM-Libtorch libtorch
- 在
.bashrc中添加环境变量:export LD_LIBRARY_PATH=/opt/libtorch/lib:$LD_LIBRARY_PATH
- CMake/Meson 配置示例
- 在你的 CMakeLists.txt 中添加如下内容:
set(Torch_DIR "/opt/libtorch/share/cmake/Torch") find_package(Torch REQUIRED) target_link_libraries(your_target "${TORCH_LIBRARIES}")
- 或者在你的 meson.build 中添加如下内容:
base_app_inc_dirs = [ # ... include_directories('/opt/libtorch/include'), include_directories('/opt/libtorch/include/torch/csrc/api/include') # ... ] executable( # ... include_directories: base_app_inc_dirs, link_args: [ '-L/opt/libtorch/lib', # 添加 libtorch 的库路径 '-ltorch', # 链接 libtorch '-ltorch_cpu', # 链接 libtorch_cpu '-lc10' # 链接 c10 ], # ... )
- 编译示例
- CMake 编译
mkdir build && cd build cmake .. make
- Meson 编译
meson build ninja -C build
- 运行环境
- 适用于 ARM64 Linux(如 BlueField-3)
- 推荐使用 gcc/g++ 8.0 及以上版本
- 本库文件较大,已通过 Git LFS 管理。
- 请确保 ARM 架构兼容,且系统已安装所需依赖(如 OpenMP)。
- 该 libtorch 库仅支持 CPU,不支持 Cuda。