单卡跑到五百多 tok/s 有人从零手搓了个推理引擎

有人开源了个从零写的推理引擎,C++ 加 CUDA,目前只专门支持两个特定的检查点。数字挺唬人:单请求单卡,六万五千 token 的解码全程平均五百四十三 tok/s。

为什么能这么快,核心就一句话:放弃通用性。通用框架要处理各种模型结构、各种量化、各种批处理策略,抽象层一层套一层;他直接针对固定的模型形状把算子融死,内存布局也是照着这个模型量身定的,该省的判断全省了。

所以这东西的价值不在于拿来直接用于生产,在于它把上限量出来了。你现在跑通用框架掉了多少性能,心里有个数。

我比较想知道的是长上下文那段的曲线,六万五千 token 还能保持这个均值,说明缓存管理下了功夫。有跑过的佬说说实测?

六万五还能维持均值 缓存确实有东西

把上限量出来 这个说法我喜欢

放弃通用性 这就是快的全部秘密

必须冲 我手上正好这张卡

能干活就行 生产还是用通用的稳

通用框架掉的那部分性能 其实就是灵活性的价格

只支持两个检查点 用途还是窄了点

有benchmark脚本吗 想自己复现