当前位置: 首页 > news >正文

Jetson Orin NX 安装 PyTorch 踩坑总结

Jetson Orin NX 安装 PyTorch 踩坑总结

环境信息

  • 设备:NVIDIA Jetson Orin NX
  • JetPack:6.0(R36.3.0)
  • CUDA:12.2
  • Python:3.10
  • 架构:aarch64(ARM)

核心问题:Jetson 不能用官方 pip 源

# ❌ 这样装不了,官方源只有 x86_64
pip install torch
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu121# ✅ 正确方式:用 NVIDIA 官方为 Jetson 编译的 wheel
# 来源:https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048

原因是 Jetson 是 ARM 架构,PyTorch 官方 pip 源不提供 aarch64 版本。


踩坑记录

1. CUDA Toolkit 没装,只有驱动

nvidia-smi 显示 CUDA 12.2 是驱动支持的最高版本,不代表 Toolkit 装了。

# 症状
libcudart.so.12: cannot open shared object file# 解决
sudo apt install cuda-toolkit-12-2
echo 'export PATH=/usr/local/cuda-12.2/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

2. torchaudio 没有 Jetson 官方 wheel

NVIDIA 官方页面只提供了 torch,没有 torchaudio。

不推荐从源码编译失败,失败率太高了。

3. 内存不足被 OOM Killer 杀掉

同时加载多个模型导致内存耗尽:

# 症状
Killed解决方式:减少同时加载的模型数量,禁用桌面节省内存:
```bash
sudo systemctl set-default multi-user.target

4. 官方PyTorch 是"万能版",Jetson 版是"定制版",占用大小差距大

普通 Linux(x86)的 PyTorch:

torch-2.x.x.whl  ~2G├── CUDA 11.x 库├── CUDA 12.x 库├── cuDNN 库├── x86 优化指令集(AVX、AVX2、AVX512)└── 各种平台的预编译二进制

为了兼容各种 CUDA 版本和硬件,把所有东西都打包进去了。

Jetson 的 PyTorch:

torch-2.4.0-jetson.whl  ~200~300MB├── 只针对 aarch64├── 只针对 CUDA 12.2(Jetson 固定版本)└── 只针对 sm_87(Orin 的 GPU 架构)

NVIDIA 专门为 Jetson 编译,目标平台固定,不需要兼容其他版本,所以裁剪掉了大量无关内容。

简单说就是:官方 PyTorch 是"万能版",Jetson 版是"定制版",定制版体积自然小很多。


最终正确安装方式

  1. 去 NVIDIA 官方论坛获取 wheel:

    https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
    
  2. 下载对应 JetPack 版本的 wheel(注意 cp310/cp311 对应 Python 版本)

  3. 本地安装:

    pip install torch-*.whl
    
  4. 验证:

    python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
    

经验总结

问题 原因 解决
pip 找不到 torch Jetson 是 ARM,官方源无 aarch64 用 NVIDIA 论坛的 wheel
libcudart 找不到 只装了驱动没装 Toolkit apt install cuda-toolkit-12-2
libcudnn 找不到 cuDNN 未安装 apt install libcudnn8
torchaudio 无法安装 无官方 wheel,源码编译失败 从源码用 Unix Makefiles 编译
Killed 内存不足 OOM 减少模型数量,禁用桌面
http://www.zskr.cn/news/1394295.html

相关文章:

  • SharePoint零日漏洞CVE-2025-53770无损扫描实战指南
  • ChatGPT文件上传限制终极手册:支持格式/大小/页数/字体嵌入/OCR兼容性五维评分表(2024.06最新实测版)
  • 免费论文降AI工具实测:去AI痕迹稳过审避坑指南
  • 实测Taotoken在Nodejs调用下的延迟表现与稳定性观感
  • Zotero PDF2zh:学术文献翻译利器,5分钟实现高质量双语对照
  • 扣子(coze)高级实战-从“一张图”到“多镜头影视解说”
  • 北京法式全屋定制厂家盘点:不同预算档位的核心差异 - 资讯纵览
  • 12-用例中心设计:如何把文档、快照与验证资产真正关联起来
  • JMeter分布式压测实战:突破单机性能瓶颈的架构与落地
  • 如何通过微信发起投票活动?2026保姆级教程:中正投票3分钟轻松搞定 - 投票评选活动
  • STM32CubeMX配置USART避坑指南:从printf重定向到DMA发送,让你的串口调试又快又稳
  • 告别91卫图!用QGIS+Python脚本免费批量下载Google/Bing高清卫星图(附完整代码)
  • 8个问题搞定Agent技术栈选型!收藏这份保姆级指南,小白也能轻松上手大模型开发
  • 基于NE555的舵机测试仪DIY:从PWM原理到功率控制实战
  • 别再让ICG拖垮你的芯片时序:手把手教你搞定Clock Gating Check的Setup/Hold约束
  • UE5专用服务器打包与联机部署实战指南
  • 如何用5分钟快速上手XPlaneConnect:飞行模拟开源工具终极指南
  • Taotoken模型广场功能详解如何为你的项目选择合适模型
  • 构建支持多模型降级策略的客服机器人后端实践
  • 个人开发者如何利用 Taotoken 低成本体验最新的旗舰大模型
  • 使用Nodejs快速构建接入Taotoken多模型API的聊天服务
  • 细胞迁移、侵袭与粘附的分子机制及分析技术研究进展
  • PCR Array 应用指南
  • 利用 TaoToken 为内部知识库构建低成本问答 Agent
  • Vue电商商城开发实战:从零构建完整电商平台的最佳实践
  • 浏览器资源嗅探利器Cat-Catch:让网页媒体资源轻松触手可及
  • 使用Taotoken后我们团队的API调用成本与用量一目了然
  • 华为路由器、交换机 Console 口登录密码的网络教学实验室重置方法
  • 苏州科梵鑫家具:专业的苏州酒店活动隔断哪家好 - LYL仔仔
  • 玻色因精华平价推荐 这5款玻色因精华实测好用 - 全网最美