[P] 读了太多架构手册后,我构建了一个可移植的GPU ISA [P]
摘要
一个名为WAVE的可移植GPU ISA,将内核编译为通用二进制文件,并翻译成特定厂商的后端(Metal、PTX、HIP、SYCL),已在多个GPU上验证结果。
我一直在业余时间阅读GPU架构文档。NVIDIA PTX、AMD ISA参考指南、Intel Xe、反向工程得到的Apple GPU资料。跨越16种微架构,超过5000页。过了一段时间,你会发现所有四家厂商都在做同样的11件事,只是名称不同。于是,我编写了一份涵盖所有这些的规范,并围绕它构建了一个工具链。它叫WAVE。你只需编写一次内核,它就会被编译成一个可移植的二进制文件,然后通过轻量级后端将其转换为Metal、PTX、HIP或SYCL。同一个二进制文件已在Apple M4 Pro、NVIDIA T4和AMD MI300X上验证通过。我的合著者Onyinye构建了PyTorch集成,并在所有后端上获得了相同的训练结果。请上GitHub点星:[https://github.com/Oabraham1/wave](https://github.com/Oabraham1/wave) 预印本:[https://arxiv.org/abs/2603.28793](https://arxiv.org/abs/2603.28793) 阅读完整文档及构建过程:[https://wave.ojima.me](https://wave.ojima.me) pip install wave-gpu
相似文章
Rust 中的 GPU 卸载:可移植、安全且快速
本文介绍了一种零开销、多厂商的 GPU 编译框架,该框架内置于 Rust 编译器中,利用 Rust 的所有权模型确保内存安全,并实现与原生 CUDA 和 HIP 基准相媲美的性能。
@seclink:有点意思,来学点东西...
auto-gpu-kernel 1.0 版本已发布,这是一个能自动生成高性能 GPU 内核的元级工具。
一个可定制的编译器,用于为AI模型生成高效的融合GPU内核 [P]
作者介绍了一款用 Python 编写、高度可定制且易于修改的 ML 编译器。该编译器通过多级 IR 流水线将 LLMs 转换为优化的 CUDA 内核,在特定操作上实现了与 PyTorch 相当甚至更优的性能。文章详细阐述了该编译器的优化过程、降级规则以及用于生成高效融合 GPU 内核的 CLI 用法。
FMAG:单指令GPU虚拟机与工具链
FMAG是一个单指令(带保护的融合乘加)GPU虚拟机,消除了线程分歧,允许在GPU上高效地逐元素解释任意程序。它包含用于编写和运行此类程序的工具链和库。
@akshay_pachaar: https://x.com/akshay_pachaar/status/2087928032904523980
一条科普帖,讲解GPU的工作原理,重点在于主导LLM服务性能的内存-计算不对称性,并说明量化、投机解码和连续批处理等技术如何从这一根本约束出发。