jittor
Jittor/jittor加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
清华大学团队打造的下一代深度学习基础设施,以"即时编译+元算子"双引擎驱动,重新定义框架性能上限。
想象一下:你写了一段 PyTorch 代码,在笔记本上运行完美,迁移到服务器却发现 GPU 利用率只有 30%。同样的算子,在不同硬件上性能差异巨大——这是因为大多数框架在运行时解释执行,无法针对具体硬件生成最优指令。
Jittor 的解题思路:不是在运行时解释 Python 代码,而是像编译器一样,在执行前把整个计算图"翻译"成目标硬件的高效机器码。这就是 JIT(即时编译) 的核心思想——代码写完的同时,硬件也准备好最优执行方案了。
2020 年 1 月,清华大学计算机系可视化与社会计算实验室发布了 Jittor,剑指国产深度学习框架的性能天花板。上线四年,GitHub 收获 3237+ Stars,成为国产深度学习框架中最活跃的开源项目之一。
Jittor 并非凭空诞生,其核心技术源自多篇顶级学术论文:
| 论文 | 会议 | 核心贡献 |
|---|---|---|
| "Jittor: A Novel Deep Learning Framework with JIT Compilation and Meta-Operators" | AAAI 2021 | 框架架构设计 |
| "Automated Search-based Meta-Operators for Deep Learning" | - | 元算子自动搜索 |
| "nnFusion: DNN Compiler of DNN via Decoupling Runtime and Compiler" | SC 2022 | DNN 编译优化 |
作者团队来自清华大学计算机系,实验室在计算机视觉、可视化分析方向有深厚积累。Jittor 项目由"新一代人工智能"重大科技专项支持,背后是清华多个实验室的联合研发力量。
传统深度学习框架(如 PyTorch、TensorFlow Eager Mode)采用动态图执行:每行 Python 代码立即在底层执行,优点是调试友好,缺点是无法对整个计算图做全局优化。
Jittor 采用混合架构:前端保持 Python 动态图接口,后端通过 LLVM/NVCC 将计算图即时编译为高度优化的 CUDA/C++ 代码。
关键优势:
元算子是 Jittor 的另一核心创新。Jittor 定义了一套元算子基元(约 50 个),可以组合出任意复杂的神经网络结构。
import jittor as jt
from jittor import nn
class Model(nn.Module):
def __init__(self):
self.layer1 = nn.Linear(1, 10)
self.relu = nn.ReLU()
self.layer2 = nn.Linear(10, 1)
def execute(self, x):
x = self.layer1(x)
x = self.relu(x)
x = self.layer2(x)
return x
| 层级 | 技术选型 |
|---|---|
| 前端语言 | Python |
| 执行模式 | 动态图 + JIT 编译 |
| 后端语言 | CUDA, C++, LLVM |
| 包管理 | pip, conda, Docker |
| 算子体系 | 元算子(Meta-Operator) |
| 自动微分 | 内置(与框架深度集成) |
| GPU 支持 | NVIDIA CUDA, AMD ROCm, Hygon DCU |
| CPU 支持 | x86, ARM, 龙芯 |
Jittor 内置丰富的预训练模型和应用工具,覆盖主流场景:
Jittor 是少数同时支持 NVIDIA、AMD(ROCm)和国产海光 DCU 的深度学习框架:
# NVIDIA CUDA 安装
python -m pip install jittor
# AMD ROCm 安装 (Linux)
export HIP_DEVICE_DIR=/opt/rocm
python -m pip install jittor
# Windows 安装
python -m pip install jittor
| 特性 | Jittor | PyTorch |
|---|---|---|
| 编译模式 | JIT 编译(默认) | Eager 模式(默认),可选 torch.compile |
| GPU 优化 | 硬件感知编译 | 通用 CUDA 调用 |
| AMD 支持 | 原生支持 | 第三方 ROCm 移植 |
| 模型库规模 | 中等(持续增长) | 丰富(PyTorch Hub) |
| 社区生态 | 较小 | 庞大 |
Jittor 的安装复杂度属于中等。纯 CPU 安装非常友好(pip install jittor),但 GPU 版本需要 CUDA >= 10.0。
官方提供 Dockerfile,支持容器化部署,适合 HPC 集群、研究服务器等需要环境隔离的场景。
对于已有 PyTorch 经验的开发者,Jittor 上手成本极低——API 设计高度相似,核心区别在于执行效率。
JIT 编译在带来性能的同时,也增加了调试复杂度。当代码出错时,Jittor 的报错信息有时不如 PyTorch 直观。
Jittor 是国内最早采用"即时编译"理念的深度学习框架之一,代表了国产 AI 基础设施的差异化路线。
| 群体 | 推荐程度 | 原因 |
|---|---|---|
| 深度学习研究者 | ⭐⭐⭐⭐ | JIT 性能优势明显,适合算法研究 |
| AI 开发者 | ⭐⭐⭐ | 生态限制,适合有定制需求的场景 |
| 企业生产 | ⭐⭐ | 生态薄弱,生产环境谨慎评估 |
| AI 爱好者 | ⭐⭐⭐⭐ | 门槛低,体验前沿编译技术 |
# 1. 安装(CPU 版本)
pip install jittor
# 2. 验证安装
python -m jittor.test.test_example
# 3. Docker 部署
docker pull jittor/jittor:latest
docker run -it jittor/jittor:latest
本文档基于 GitHub 最新仓库数据生成,Jittor 项目仍在活跃开发中。