中文内容
在算法交易中,缩短对市场事件的响应时间至关重要。为了跟上高速电子市场的节奏,对延迟敏感的公司通常会使用 FPGA 和 ASIC 等专用硬件。然而,随着市场变得更加高效,交易员越来越依赖深度神经网络等高级模型来提升盈利能力。由于在底层硬件上实现这些复杂模型需要大量投资,通用 GPU 提供了一种实用且具有成本效益的替代方案。
Supermicro ARS-111GL-NHR 服务器中的 NVIDIA GH200 Grace Hopper Superchip 在 STAC-ML Markets(Inference)基准测试 Tacana 套件(由 STAC 审计)中实现了个位数微秒级延迟,提供了与专用硬件系统相当或更优的性能。
本文详细介绍了这些创纪录的结果,并深入探讨了低延迟 GPU 推理所需的定制解决方案。文中还将带你了解一个开源参考实现以及入门教程。
金融服务领域的 STAC-ML 基准测试
具有长短期记忆(LSTM)的深度神经网络广泛用于资本市场的时间序列预测。STAC-ML(Markets)Inference 基准测试衡量 LSTM 模型延迟,即从接收新输入到生成输出之间的时间。它包括三个复杂度递增的模型(LSTM_A、LSTM_B 和 LSTM_C),其中 LSTM_B 约为 LSTM_A 的六倍,LSTM_C 约为 LSTM_A 的 200 倍。该基准测试包含两个套件:Tacana,用于测试在每个时间步更新的滑动窗口上的推理;Sumaco,用于测试每次操作中针对全新数据的推理。
STAC-ML Markets(Inference)Tacana 基准测试处理滑动窗口输入,并在每次迭代时生成单个回归输出 zt。

STAC-ML 已成为金融机构在交易中利用机器学习(ML)的关键基准。它在接近真实生产环境的条件下,基于实时市场数据运行模型时,严格衡量技术栈的速度和可靠性。通过标准化关键指标——例如 LSTM 和其他时间序列模型的延迟、吞吐量和效率——STAC-ML 使银行、对冲基金和做市商能够在部署前对相互竞争的硬件和软件解决方案进行客观、同类可比的比较。
对于位于托管数据中心的交易台而言,订单成败可能在微秒之间决定,STAC-ML 结果至关重要。它们能够验证某个平台是否可以满足严格的延迟预算,以支持高频做市、短期价格预测和自动化对冲等要求严苛的用例。
此外,由于该基准由来自领先金融公司的从业者设计和治理,其评分在技术选型过程中具有重要分量,有助于公司管理新型 ML 驱动交易策略推出过程中的风险,并为重大投资决策提供依据。
NVIDIA 关键 STAC-ML 结果
NVIDIA 在配备单个 NVIDIA GH200 Grace Hopper Superchip 的 Supermicro ARS-111GL-NHR 上,以 FP16 精度针对 STAC-ML Tacana 展示了以下延迟(第 99 百分位)。
LSTM_A 和 p99 延迟:
- 一个模型实例时为 4.70 微秒
- 两个模型实例时为 4.67 微秒
- 使用四个模型实例时为 4.61 微秒
- 使用八个模型实例时为 4.67 微秒
LSTM_B 和 p99 延迟:
- 使用一个模型实例时为 7.10 微秒
- 两个模型实例时为 6.88 微秒
- 四个模型实例时为 7.10 微秒
LSTM_C 和 p99 延迟:
- 一个模型实例时为 15.80 微秒
请注意,在 LSTM_A 和 LSTM_B 中,当模型实例数量(NMI)从 1 扩展到 4–8 个时,观察到的延迟仍然高度一致。这种稳定性凸显了绿色上下文在为延迟敏感型应用保持可预测性能方面的重要性。更多详情,请参见 Supermicro ARS-111GL-NHR 搭载 NVIDIA GH200 Grace Hopper Superchip 上的 STAC-ML Markets(推理)。
NVIDIA GH200 Grace Hopper Superchip 的无缝集成
NVIDIA GH200 Grace Hopper Superchip 通过支持多种容器、应用程序二进制文件和操作系统,扩展了强大的 64 位 Arm 处理器生态系统——所有这些都可在 Grace Hopper 上轻松运行,无需任何修改。它可与完整的 NVIDIA 软件栈无缝集成,包括 NVIDIA HPC 和 AI 平台。
与此前提交结果的比较
NVIDIA 此前提交了针对吞吐量和延迟(Sumaco 和 Tacana 基准测试)的优化结果,详见《NVIDIA A100 Aces Throughput, Latency Results in Key Inference Benchmark for Financial Services Industry》。在此前的 Tacana 工作中,滑动窗口方法通过预计算实现了对递归性的更高效处理。我们对问题进行了重构,使用固定数量的矩阵-矩阵乘法(GEMM)以及一次初始预计算,在所有时间步上执行计算,从而实现了具有竞争力的性能。
近期关于 Tacana 的 FPGA 基准测试提交报告称,通过将延迟测量聚焦于最终时间步,并利用关键区段之外的预计算,两个 LSTM 规模实现了个位数微秒级延迟。
要在 GPU 上实现如此低的延迟,需要一个专门定制的解决方案,以突破 GPU 内核启动延迟的边界。
NVIDIA 的实现包括两个连续步骤。第一步是预计算,它为滑动窗口 LSTM 的最终时间步生成所需输入。例如,如果需要将滑动窗口的初始隐藏/单元输入重置为 0,那么每层需要执行两次 GEMM 操作。此预计算阶段不计入计时测量。
第二步是推理,即在滑动窗口移至新输入后,计算最后一个 LSTM 时间步。推理之后,会在下一次预处理阶段预先计算下一轮推理迭代所需的相关数据。
GPU 上的低延迟 LSTM 推理
本节介绍在 NVIDIA 硬件上高效实现 LSTM 网络低延迟推理的技术,包括一个开源参考实现。
NVIDIA 开源 LSTM CUDA 内核
dl-lowlat-infer 是一个开源代码库,提供用于实现低延迟时间序列推理的 CUDA 内核示例。这里展示的内核中使用的技术也应用于 STAC-ML 基准测试。虽然该开源代码库包含最小化的基准测试功能以支持代码执行,但它并不旨在成为像 STAC-ML 那样的完整基准测试套件。
dl-lowlat-infer 代码库展示了在 NVIDIA GPU 上运行深度学习工作负载的高效技术,并且完全自包含。它可以生成模型权重和输入,随机采样输入数据位置,并在同一 GPU 上为单个或多个模型实例运行推理。目前,它仅限于 LSTM 的滑动窗口用例。
这项工作聚焦于三种 LSTM 模型规模,它们经过专门调优,以适配并高效运行在 NVIDIA RTX PRO 6000 Blackwell Server Edition GPU 上。这些配置包括:一个可装入单个流式多处理器(SM)的共享内存和寄存器的小型模型,一个跨越线程块集群(TBC)内八个 SM 的中型模型,以及一个利用几乎整个设备(186 个 SM 中的 184 个)的大型模型。
虽然破纪录的 STAC-ML Tacana 结果是在 NVIDIA GH200 Grace Hopper Superchip 上取得的,但以下教程使用的是 NVIDIA RTX PRO 6000 Blackwell Server Edition。这一转换是出于许多金融服务公司目标部署环境的考虑。低延迟交易柜台通常运行在电力受限的托管机房环境中,在这些环境下,传统数据中心级 GPU(如 GH200)的散热和功耗范围可能并不可行。
NVIDIA RTX PRO 6000 Blackwell Server Edition GPU 提供了一种强大且高效的替代方案,适合部署在这些受限环境中。关键的是,以下教程中介绍的低延迟推理技术和开源代码与这两种架构完全兼容。这确保了在 RTX PRO 6000 Blackwell Server Edition GPU 上提供高性能的相同优化内核,也能在 GH200 上高效运行。这使用户能够轻松地在数据中心平台上进行基准测试。
如何构建并运行低延迟 LSTM 推理参考实现
要构建并运行该基准测试,你需要 CUDA 13.0 或更新版本,以及支持 C++20 的编译器。以下说明针对最新的 NVIDIA Blackwell 架构量身定制,但你也可以通过针对 SM90 进行编译,在 NVIDIA Hopper GPU 上运行代码。在较旧的 GPU 架构上仅支持小型网络;由于技术限制,两个更大的网络无法在这些架构上运行。
在 Docker 内构建
该基准测试设计为在 Docker 容器内运行。在代码的顶层目录中,你可以构建容器和基准测试,并准备模型的权重和输入:
make -C docker CUDA_ARCHS=120-real LOCAL_USER=1 release_run
CUDA_ARCHS 在 cmake 中设置目标 GPU 架构。例如,100 可用于 NVIDIA Blackwell 和 NVIDIA RTX PRO 6000 Blackwell Server Edition GPU。
运行模型
镜像构建完成并启动容器后,你可以进入应用目录 /app/dl-lowlat-infer,并使用持久化算法运行例如单个小型模型实例的 10 秒执行:
./nvLstmInf lstm_s data/lstm_s data/lstm_s.npy 10
使用持久化算法运行中型模型的四个实例,并使用六个 CPU 线程(每个模型实例一个线程,外加主线程和计时线程):
./nvLstmInf --cpuset=0,1,2,3,4,5 --num-instances=4 lstm_m data/lstm_m data/lstm_m.npy 10
有关在容器内运行和开发的更多详细信息,请参阅基准测试文档。
结果
表 2 展示了在配备 AMD EPYC 9124 16 核处理器和 NVIDIA RTX PRO 6000 Blackwell Server Edition GPU 的系统上运行该代码所产生的结果。
Ping Pong 测试衡量 CPU-GPU 同步以及从主机内存读取输入向量所带来的开销,这是小型模型延迟的主要来源。这些测量采用了与俄亥俄州立大学 MVAPICH 延迟微基准测试类似的方法。该开销因系统而异,并取决于硬件和软件栈中的多个因素。对于层数更多的较大模型,使用集群级和网格级同步原语会带来额外延迟。
实现细节
本节介绍实现方面的细节。
用于推理的持久化内核
批量大小为 1 的推理阶段执行矩阵-向量乘法,随后在每一层进行逐元素运算。在最后一层之后,将得到的隐藏状态归约为单个值,并由推理过程报告给基准测试进程。
推理采用持久化 kernel 方法实现,即 kernel 在应用程序的整个生命周期内保持活跃。这种持久性通过在 kernel 初始化期间仅将权重加载到共享内存和寄存器一次来提升性能。

根据问题规模,并为确保权重能够装入可用的 SM,可以使用单个 CUDA block、一个 TBC,或分配整个设备。因此,实现了三种不同的 kernel,它们都共享相同的权重内存布局,并遵循相似的结构和时序约定。
在 RTX PRO 6000 Blackwell Server Edition GPU 上,TBC 最多可跨越八个 SM,这足以容纳中等模型的权重。用于 TBC 的分布式共享内存 API 在从其他 CUDA block 收集已计算隐藏状态片段时,能够在 SM 之间实现更高效的数据交换和同步。
时序
时序由 CPU 线程管理,需要使用 CPU 和 GPU 原子同步原语来实现主机与设备之间的信号传递。
- 当新输入到达主机内存时,主机会向设备发送信号,并同时启动计时器。
- 内核轮询该信号,然后读取输入并启动计算。
- 计算得到的浮点输出也作为主机停止计时器的信号。
还有额外的信号用于中止内核执行或重置双缓冲区 ID。这些缓冲区包含来自预计算的数据。
服务多个模型实例
例如,在 RTX PRO 6000 Blackwell Server Edition GPU 上运行单个 CUDA 块推理并不节能,也不具备成本效益。请使用 CUDA green context(GC)功能在同一块 GPU 上服务多个推理实例。请注意,还有其他方式可以独立服务多个实例。例如,使用 NVIDIA Multi-Instance GPU(MIG)功能,或为持久化 CUDA 内核本身增加一层更复杂的信号机制。
GC 功能使应用程序能够在不使内核复杂化的情况下,将 GPU 划分为多个 GC。每个 GC 绑定到特定数量的 SM。任何提交到在此类上下文中创建的 CUDA 流的 CUDA 工作,都将在对应的一组 SM 上执行。
与传统方式相比,GC 对程序员而言更加轻量且透明。GPU 被划分为大小相等的分区,以服务多个持久化内核。剩余的 SM 用于预计算阶段。由于预计算对延迟不敏感,来自不同模型实例的预计算会提交到使用剩余 SM 的同一分区,但位于不同的 CUDA 流中。
从主机与一个持久化内核实例进行协调涉及多个自旋循环。因此,服务多个模型实例需要为每个 GC 额外生成一个 CPU 线程。
最小的 GC 大小为两个 SM。因此,小型和中型模型分别为每个 GC 分配两个和八个 SM。大型模型需要几乎整个设备来在共享内存和寄存器中保存权重,因此在单块 RTX PRO 6000 Blackwell Server Edition GPU 上无法同时服务多个模型。
正文:GDRCopy
轮询位于页锁定主机缓冲区中的标志位,对设备来说可能相当昂贵。GDRCopy 通过使用 GPUDirect RDMA 创建 GPU 内存的 CPU 映射,提供了一种低延迟替代方案。这使得由 CPU 驱动的内存拷贝能够以极低开销进行——在低延迟场景中尤其有益,因为小数据传输规模小且频繁。在我们的实验中,在基于 PCIe 的系统上使用 GDRCopy 带来了高达 0.5 µs 的加速。
Ping Pong 基准测试
要获得 Ping Pong 模型,可以从最小模型实现开始,并移除所有与 LSTM 相关的计算。此设置仅测量单个时间步的 CPU 信号传递和输入读取所产生的开销。由于它不涉及权重,因此像最小模型一样,使用单个 CUDA block 来实现。这使得能够估算在给定系统上使用我们的实现所能达到的最低延迟。
低延迟推理入门
在此前发表于 Benchmarking Deep Neural Networks for Low-Latency Trading and Rapid Backtesting on NVIDIA GPUs 的工作基础上,我们现在集成了专门针对延迟关键路径优化的自定义 CUDA 内核。这些增强在两个 LSTM 模型规模上实现了破纪录的延迟表现,同时保留了灵活的开发者体验。NVIDIA 平台继续为研究、优化和部署提供一致且以生产力为导向的环境。
这些能力可通过一个开源时间序列建模流水线获得,该流水线展示了如何高效使用 NVIDIA 技术进行低延迟推理和回测。你还可以按需观看 GTC 2026 会议 Build High-Performance Financial AI: Achieve Microsecond Latency and Scalable LLM Inference。
STAC 及所有 STAC 名称均为 Strategic Technology Analysis Center, LLC 的商标或注册商标。
标签















