AI News HubLIVE
站内改写

通过CPU最大化令牌化减少TTFT

Crusoe与NVIDIA Dynamo合作开发了fastokens,一个开源的Rust BPE分词器,平均速度比HuggingFace分词器快9.1倍,在长上下文工作负载中TTFT最多降低40%。

文章情报

工程师进阶

要点

  • fastokens实现了9.1倍的平均速度提升,长提示场景下最高可达31倍。
  • 针对CPU进行了极致优化,包括并行预分词、两级缓存和动态内存管理。
  • 开源且兼容NVIDIA Dynamo和SGLang,支持多种主流模型。
  • 在GB200 NVL72系统上,100K令牌的延迟从149-165ms降至6-13ms,降幅超过92%。

为什么重要

这条新闻值得关注,因为fastokens实现了9.1倍的平均速度提升,长提示场景下最高可达31倍。

技术影响

可能影响模型选型、推理成本、产品能力和评测基准。

在基于代理的大语言模型推断中,分词是一个常被忽视的瓶颈。随着提示文本的增大(如来自工具调用、检索代码或文件、执行结果、对话历史和中间推理的累积上下文),分词时间占到了首次令牌生成时间(TTFT)的显著比例。Crusoe与NVIDIA Dynamo团队合作,开发了fastokens——一个基于高性能Rust引擎的即插即用BPE分词器。

fastokens通过在多个层面上的优化实现了显著加速。其核心优化包括CPUMaxxing:将预分词阶段分解为并行的权限区域,每个线程独立处理重叠边界,避免了顺序扫描。在BPE编码阶段,使用专用线程池并行处理,并采用两级缓存(线程本地L1和全局L2)来减少同步开销。第二个优化是动态内存管理:通过预分配缓冲区和范围引用,将大量分配替换为单一内存块,并预计算字节到Unicode的映射表以避免运行时转换。第三个优化是正则表达式:优先使用PCRE2的JIT编译路径,每个线程独立拥有预编译的正则表达式副本,消除锁竞争。

在基准测试中,fastokens在四个模型(DeepSeek-V3.2、MiniMax-M2.1、Mistral-Nemo和GPT-OSS-120B)、两个数据集(LongBench和ShareGPT)、三种CPU架构和输入长度从512到100K令牌上,平均速度比HuggingFace分词器提升9.1倍。对于超过50K令牌的提示(代理工作负载的典型情况),纯分词速度提升平均达17.4倍,峰值31倍,在真实推断工作负载中实现了高达40%的端到端TTFT改进。

在GB200 NVL72系统(NVIDIA Grace CPU)上,100K令牌的延迟从HuggingFace基线的149-165ms降至fastokens的6-13ms,降低超过92%。即使是在16K令牌时,延迟也从25-27ms降至2-3ms。不同CPU架构下的加速效果有所差异,Grace CPU上平均加速9.3-12.6倍,Xeon 8568Y上为6.8-10.0倍,Xeon 8468V上为6.6-9.3倍。

fastokens已开源,并与NVIDIA Dynamo和SGLang集成,支持包括NVIDIA Nemotron、DeepSeek、Qwen、GLM、MiniMax和Mistral在内的多种流行模型。这项工作的结果表明,通过针对CPU的深度优化,可以显著降低LLM推断中的分词瓶颈,从而改善用户体验。