Show HN: Luminal – Open-source, search-based GPU compiler
9 months ago
- #rust
- #deep-learning
- #compiler
- Luminal是一个基于搜索编译技术的高性能深度学习库。
- 在Mac上运行演示程序,需克隆代码库并按照给定命令操作。
- 正在向'2.0'版本过渡,采用大规模内核搜索技术来简化编译器堆栈。
- 提供示例代码用于构建计算图和执行矩阵乘法运算。
- 可使用Luminal本地运行Llama 3 8B模型,文档中包含设置和运行指南。
- Luminal致力于成为最快的机器学习框架,支持在M系列Macbook上运行Q8量化的Llama 3 8B模型。
- 核心库极为精简,仅包含12个基础算子即可支持transformers和卷积网络。
- 将算子编译为复杂的GPU内核以获得高性能。
- 采用穷举搜索进行优化,可自动推导复杂的计算图重写方案。
- 基于Rust语言开发,直接调用CUDA/Metal API而不经过抽象层。
- 通过大量与PyTorch实现的对比测试确保正确性。
- 采用类似XLA和tinygrad的提前编译(AOT)方式以获得更好性能。
- 支持激进的内核融合、特定形状内核,并通过编译器处理设备/数据类型。
- 当前特性包括Metal/CUDA支持、完整训练功能及Llama 3等模型实现。
- 发展路线图包括扩展搜索空间、改进CUDA支持、添加Blackwell指令集等功能。