AI Pulse

Claude写的CUDA内核,让RTX 3090上的Qwen代码生成快1.9倍

一个开源项目在GitHub上放出一段CUDA megakernel代码。它让Qwen3.8-27B在RTX 3090上比llama.cpp快1.4到1.9倍。代码由Claude Opus 5.5编写,只针对unsloth的Q4_K_M量化模型和3090优化。换硬件或模型就没加速效果。

代码生成任务里,megakernel每秒140个token,llama.cpp是73。快了1.9倍。带4K token上下文的代码任务,两个数字是95和56,快1.7倍。提示处理约每秒1600个token,对比llama.cpp的约1100,快1.4倍。

提速的关键在调度方式。通常的投机解码每轮要多次启动内核。这段megakernel把整个投机解码周期合并成一次启动。检查4到5个草稿token的成本和检查一个差不多。等待时间被压下去,吞吐量就上来了。

实现是个兼容OpenAI API的服务器,能直接替换llama服务器。代码和完整基准测试都公开在GitHub上。

输出和llama.cpp基本一致,只在罕见的舍入近似相等时出现差异。有人问过输出是不是字节级一致。讨论区里有人提醒,代码任务得用固定测试套件和通过率来评估。token层面的差异是否真的影响结果,光看速度看不出来。KVCache在约8万token上下文里用fp16,更长的上下文切成q8。

讨论区里被问到的问题包括最大上下文能到多少、散文和短提示的速度。多卡怎么跑也在问——两个独立实例还是一个实例跨两张卡。一位用户贴了测试环境:Ubuntu 22.04.5,Ryzen 5 5600X,31GB内存。显卡是RTX 3090 24GB,驱动580.178.04,CUDA 13。

还有人为IQ3_S量化模型请愿,想要一个对应的megakernel。能腾出约4GB显存给KV缓存。另一个人负载里80%是prefill,只关心提示处理速度。

这个工具只为一个模型和一款显卡打造,3090之外没有加速效果。但对拿着3090跑Qwen写代码的人来说,生成速度接近翻倍,等待时间明显短了。

阅读原文
📚 相关主题 开源大语言模型

订阅 AI Pulse

每天 08:00 · 12:30 · 18:30 · 23:50 更新