【免费下载链接】BoothOpen-source CUDA, Triton and HIP compiler targeting multiple GPU and CPU architectures.项目地址https://gitcode.com/gh_mirrors/bar/Booth点击查看免费下载Booth 是一款开源的 CUDA、HIP 与 Triton 编译器它的 CPU 后端能把 Triton 矩阵乘法 kernel 直接编译成 x86-64 原生代码——不装 GPU、不装驱动、不依赖 LLVM在普通笔记本上就能运行。本文将带你用最少的命令完成全部流程构建 Booth、编译tl.dot矩阵乘法到 CPU、一次调用验证结果。为什么要在无 GPU 的笔记本上跑 Triton 矩阵乘法如果你遇到过以下场景这篇文章就是为你写的 想学习 Triton kernel 的写法但手头只有一台没有独显的旧笔记本 在 CI 或云端无卡环境里想对 GPU kernel 做快速冒烟测试 想验证同一份 kernel 源码在不同硬件上行为是否一致。项目作者在 README.md 里这样描述这件事的惊喜感你可以写一个 Triton kernel——包括矩阵乘法——然后在一台从未见过 GPU 的机器上运行它。从零开始没有 LLVM直达原生代码。认识 Booth零依赖的开源 GPU 编译器Booth 接收 CUDA C、HIP 或 Triton 源码就是你平时交给nvcc或 Triton JIT 的那些文件然后可以编译出目标说明AMD RDNA 2/3/4直接输出 GPU 机器码.hsacoNVIDIA PTX交给驱动 JIT全程无nvccCPU x86-64主机可运行的原生目标文件无需 GPURISC-V / Tenstorrent面向特定 AI 加速芯粒的 ELF / Metalium C整个编译器唯一的构建依赖是一个 C99 编译器gcc、clang 均可没有任何第三方库。CPU 后端的实现在 src/cpu/Triton 前端的解析在 src/triton/。完整命令参考见 docs/usage.md。一键安装两分钟构建 Booth如果习惯源码构建只需要两条命令git clone https://gitcode.com/gh_mirrors/bar/Booth cd Booth make构建产物是kath这个可执行文件项目名是 Booth二进制名是 kath。确认一下工具链可用./kath doctor它会报告机器上可用的设备与工具链并做一次自检。把 Triton 矩阵乘法编译到 CPU一条命令仓库自带现成的 Triton 矩阵乘法示例 tests/tri_matmul_k.py使用tl.dot计算C A B并带有运行时 K 循环收缩维度 K 可以是任意大小还有一个无 K 循环的单 tile 版本 tests/tri_matmul.py。编译到 CPU 目标只需要一条命令./kath --triton --cpu tests/tri_matmul_k.py -o matmul.o这条命令做的事情Triton 前端解析triton.jit的 Python 源码并降到中间表示 BIRCPU 后端把 SIMT 语义展开成线程循环最终产出一个可以在普通 x86-64 主机上链接运行的目标文件。特性文档 docs/features.md 明确列出了这一能力tl.dot降级后通过--cpu运行带运行时 K 循环K 可以是任意大小。编译完成后可以顺手看一眼降级结果满足一下好奇心./kath --triton --ir tests/tri_matmul_k.py调用约定一个隐藏参数跑通 kernelCPU 后端生成的函数遵循一个统一的调用约定先按顺序传入 kernel 自己的参数最后追加一个额外参数nthreads。kernel 主体会从thread_id 0一路跑到nthreads所以一维启动时直接把元素个数传进去一次调用就能干完所有活。仓库里有一个完整的可运行驱动模板 examples/cpu_launch_vadd.c配套的 Triton 源码是 tests/tri_vadd.py照抄它的模式即可调用 matmul声明matmul_k的函数签名按参数顺序传矩阵指针、K、各维 stride 和 block 尺寸末尾补上nthreads。随后像链接任何普通 C 函数一样编译运行gcc -no-pie driver.c matmul.o -o matmul ./matmul打印C矩阵并与手算结果对照矩阵乘法就在你的 CPU 上跑通了。结果验证CPU 后端本身就是裁判怎么确认输出是对的项目把 CPU 后端当作差分测试的基准oracletests/diff/run_diff.sh 把同一个 kernel 在两个后端上各跑一遍再比对结果一旦不一致问题一定出在另一个后端的代码生成上。这套跨后端对比x86 对 RISC-V全程不需要 GPU。同时docs/hardware.md 列出了已在真实硅片上验证通过的硬件AMD MI300X、RDNA3、NVIDIA RTX 4060 Ti 等说明同一份 BIR 降级路径在 GPU 上同样正确。最后说清楚限制摘自 docs/features.mdCPU 后端正确性优先采用栈上分配的代码生成、暂无寄存器分配器tl.load的 mask 暂不生效建议让启动的nthreads等于元素个数。它跑得起来但不以快著称——这也正是它作为调试与验证工具的价值所在。同一份源码还能去哪同一个 matmul 文件换个旗标就能去别的硬件这正是 Booth 的设计初衷./kath --triton --amdgpu-bin tests/tri_matmul_k.py -o m.hsaco→ AMD GPU 机器码./kath --triton --nvidia-ptx tests/tri_matmul_k.py -o m.ptx→ NVIDIA PTX./kath run kernel.cu→ 自动检测设备编译并运行一条龙小结回顾一下你在无 GPU 笔记本上完成的完整链路构建make零第三方依赖编译./kath --triton --cpu把tl.dot矩阵乘法变成 x86-64 目标文件调用kernel 参数 末尾的nthreads一次调用跑完整个 kernel验证CPU 后端兼任差分测试裁判结果可信。没有 GPU照样能写、能编、能跑 Triton 矩阵乘法——这就是 Booth CPU 后端带给新手和普通用户的最直接福利。赞分享【免费下载链接】BoothOpen-source CUDA, Triton and HIP compiler targeting multiple GPU and CPU architectures.项目地址https://gitcode.com/gh_mirrors/bar/Booth点击查看免费下载相关推荐没有本地 GPU 时如何用 SkyPilot 在云端 GPU 上构建 LEANN 索引并同步回本地没有本地 GPU 时如何用 SkyPilot 在云端 GPU 上构建 LEANN 索引并同步回本地 LEANN 的索引构建通常运行在个人设备上但当你没有本地人工智能大模型数据库向量数据库RAG本地部署MCP 服务ChatGPTGPT-4.5 架构系统提示词全拆解Model Response Spec 内容引用协议与工具编排规范ChatGPTGPT 4.5 架构系统提示词全拆解Model Response Spec 内容引用协议与工具编排规范 导读 本文以 OpenAI/cha文档知识库突破GPU算力瓶颈Triton流水线技术如何让矩阵乘法提速3倍突破GPU算力瓶颈Triton流水线技术如何让矩阵乘法提速3倍 在深度学习和高性能计算领域GPU算力的充分利用一直是开发者追求的核心目标。Triton作为编译器编程语言人工智能深度学习高性能计算创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考