跳到主要内容

环境与版本矩阵

本页用于回答“我的机器能不能学这门课”。课程主线不绑定某一块固定硬件,但每次实验都必须记录实际版本。

路径选择​

路径推荐用途必做实验可选实验
Ubuntu Server + NVIDIA GPU40 学时主线环境检查、Qwen baseline、Q8/Q5/Q4、profiling、local APIvLLM、TensorRT、长稳测试
Jetson60 学时或项目扩展JetPack 记录、Qwen 迁移、tegrastats、功耗/温度TensorRT Edge-LLM、engine build
CPU-only入门和报告结构训练CPU baseline、API smoke test、日志记录小模型对比
Mac补充本地体验llama.cpp 或 MLC 路线阅读移动端路线调研
Android / iOS扩展路线阅读 MLC LLM、LiteRT、ExecuTorch选做 demo

公开资料怎么转成本页矩阵​

外部资料里的环境说明通常分散在系统文档、runtime README、Jetson 教程和 benchmark 规范里。本页只吸收它们的记录方法:先能复现环境,再做 Qwen GGUF 和 Q8/Q5/Q4 对比,最后把 profiling、local API 和报告字段串起来。

资料类型本页吸收什么转成哪个字段或规则
Ubuntu / NVIDIA 驱动文档OS、driver、CUDA 和工具链版本要可追溯OS、Driver、CUDA、Python、CMake
Qwen / llama.cpp 文档模型、GGUF 文件和 runtime commit 影响实验可复现性Qwen 模型、llama.cpp commit、模型 SHA256
Jetson / JetPack 文档Jetson 要记录 L4T、功耗模式、统一内存和散热状态JetPack / L4T、nvpmodel、jetson_clocks、tegrastats
MLPerf / Nsight / llama-benchbenchmark 结果必须写清硬件、输入和运行条件报告第 2 节环境字段、profiling 附录
MLC / LiteRT / ExecuTorch / Core ML移动端是扩展路线,不进入 40 学时必做Android / iOS 标为阅读或选做

移动端和 CPU-only 路线也要写清“未做什么”,避免报告默认承诺跨平台可用:

路线参考资料报告里的最低写法
CPU-onlyllama.cpp CPU、BitNet/bitnet.cpp写明没有 GPU offload,速度结论只代表 CPU
Macllama.cpp Metal、MLC LLM、Core ML写明是否使用 Metal/Core ML,不能套用 CUDA 结果
AndroidLiteRT、ExecuTorch、MLC LLM写成路线图或选做 demo,未实测就标“未验证”
iOS/macOS appCore ML Tools、MLC LLM记录转换格式和 compute units;未做实机就不写推荐
浏览器/WebGPUMLC LLM记录浏览器、backend 和模型限制;不代替本地 API 结论

本课程重绘:环境路线矩阵​

Jetson、LiteRT、ExecuTorch 和 MLC LLM 的官方图展示了不同部署路线。本课程把它们重画成环境矩阵,提醒学习者报告里要写清“做了哪条路线、没做哪条路线”。

来源图思路本页吸收什么矩阵字段
Jetson AI Lab 设备族Jetson 不是单一硬件,型号、内存和功耗模式会改变结论Jetson 型号、JetPack/L4T、nvpmodel、tegrastats
LiteRT architectureAndroid 路线要写清 app、runtime、delegate 和硬件加速边界model format、delegate、CPU/GPU/NPU、未验证项
ExecuTorch stack移动端部署需要导出、lowering、runtime 和设备后端Android/iOS 路线标为扩展,不套用 Ubuntu 结论
MLC LLM workflow模型要经过编译/打包后进入不同前端或 runtimeMac、浏览器、移动端字段必须写 backend 与未验证边界

这页不替学习者判断“哪台机器最快”。它只要求把环境差异记录清楚,避免把 Ubuntu Server 上的结论直接套到 Jetson、CPU 或移动端。

已测试环境记录模板​

课程不预置性能数字。教师或学员应把自己的环境填到下面这张表。

项目Ubuntu ServerJetson备注
OS待填待填例如 Ubuntu 22.04
CPU待填待填记录型号和核心数
RAM待填待填Jetson 记录统一内存
GPU待填待填NVIDIA GPU 或 Jetson SoC
Driver待填不适用或待填nvidia-smi
CUDA待填JetPack 内置nvcc --version 或说明未安装
JetPack / L4T不适用待填cat /etc/nv_tegra_release
Python待填待填python3 --version
CMake待填待填cmake --version
llama.cpp commit待填待填git rev-parse --short HEAD
Qwen 模型待填待填模型名、量化格式、来源

报告第 2 节填写小抄​

字段Ubuntu Server + NVIDIA GPUJetson
GPU / Jetson写实际 NVIDIA GPU 型号;未测 Jetson 时写“不适用(未测)”写 Jetson 型号和 SoC
Driver / CUDA / JetPack写 NVIDIA Driver、nvidia-smi 显示的 CUDA Version、nvcc 是否存在写 JetPack/L4T;Driver 可写“不适用”或“未单独记录”
llama.cpp commit在 ~/edge-ai-lab/src/llama.cpp 执行 git rev-parse --short HEAD同 Ubuntu
模型来源教师提供、Hugging Face repo 或离线包编号同 Ubuntu
模型许可证从模型卡或教师说明填写;查不到写“未记录”同 Ubuntu
模型 SHA256sha256sum *.gguf同 Ubuntu

环境快照命令​

Ubuntu Server:

{
date
uname -a
lscpu | head -n 30
free -h
df -h
python3 --version
git --version
cmake --version
nvidia-smi || true
nvcc --version || true
} | tee ~/edge-ai-lab/env/ubuntu-env.txt

Jetson:

{
date
uname -a
cat /etc/nv_tegra_release
free -h
df -h
python3 --version
git --version
cmake --version
sudo nvpmodel -q
sudo jetson_clocks --show
} | tee ~/edge-ai-lab/env/jetson-env.txt

常见边界​

情况能否继续处理
没有 Jetson可以用 Ubuntu 主线完成 40 学时版本,在报告中说明 Jetson 未测
没有 NVIDIA GPU可以部分继续只做 CPU baseline、API 和报告结构,GPU offload 标为未验证
nvcc 不存在可能可以继续先看 llama.cpp 是否能用 CUDA 构建;有些环境只装 runtime
Jetson 存储不足可以继续但要调整使用 NVMe 或外部存储,不把模型放课程仓库
网络无法下载模型可以继续使用教师离线包,记录来源和 hash

版本记录规则​

  • 不把 .gguf、checkpoint、adapter 和大日志提交到课程仓库。
  • 每次换模型、runtime 或驱动后,都要更新报告里的环境字段。
  • 服务器结果不能直接代表 Jetson 结果。
  • Jetson engine、TensorRT engine 等硬件相关产物通常需要在目标设备或匹配环境中生成。

参考资料​

本章吸收方式: