2. 金融模型推理基础
在进入性能优化之前,必须先回答一个更基础的问题:我们到底在优化什么?金融模型推理并不是单一负载,它横跨毫秒级撮合风控、分钟级批量评分、小时级组合优化与隔夜风险模拟。不同模型类型、不同推理任务对计算资源的需求差异极大,选错硬件或优化方向,往往比不优化更糟。本节从模型类型、任务特点、CPU/GPU角色和选型依据四个层面建立推理性能优化的认知基线。
一、常见金融模型类型及其计算特征
金融业务中的模型大致可分为五类,每类的计算模式截然不同:
- 统计与计量模型:如ARIMA、GARCH、VAR、逻辑回归、线性回归。以矩阵运算和递推为主,单次计算量小,但常需高频调用或滚动窗口重估。
- 树模型与集成模型:如XGBoost、LightGBM、随机森林。推理以特征分裂判断为主,分支多、访存密集,对缓存和内存带宽敏感,GPU加速收益取决于树深度与批量大小。
- 深度学习模型:如LSTM、Transformer、TCN,用于时序预测、舆情分析、反欺诈。以张量运算为核心,GPU并行优势明显,但小批量低延迟场景可能受限于内核启动开销。
- 图模型与关系网络:如GNN用于关联交易、团伙欺诈识别。计算不规则,邻居采样和稀疏矩阵操作多,CPU与GPU混合调度常见。
- 优化与仿真模型:如蒙特卡洛模拟、组合优化、VaR/CVA计算。计算量大、可并行度高,是GPU加速的经典场景,但路径依赖和随机数生成会带来额外开销。
二、金融推理任务的四类特点
同样是推理,金融场景对延迟、吞吐、精度和稳定性的要求并不一致。可归纳为四个维度:
| 任务类型 | 典型场景 | 延迟要求 | 批量特征 | 资源倾向 |
|---|---|---|---|---|
| 在线实时推理 | 支付风控、交易反欺诈 | 毫秒级 | 单条或极小批量 | CPU低延迟优先 |
| 近线批量推理 | 信贷评分、客户分层 | 秒级到分钟级 | 中大批量 | GPU吞吐优先 |
| 离线批量推理 | 隔夜风险、组合回测 | 小时级 | 超大批量 | GPU并行优先 |
| 交互式分析推理 | 投研问答、报表生成 | 百毫秒到秒级 | 变长批量 | CPU/GPU混合 |
延迟与吞吐往往互相制约。在线风控追求P99延迟,离线风险追求单位时间吞吐,两者的优化目标函数不同,不能套用同一套调参策略。
三、CPU与GPU在金融场景中的角色分工
CPU和GPU不是替代关系,而是分工关系。CPU擅长复杂控制流、低延迟单线程、分支密集和内存随机访问;GPU擅长规则的大规模并行、高吞吐张量计算和批处理。金融推理中常见的分工模式是:CPU负责请求接入、特征拼装、规则过滤、结果后处理与调度;GPU负责模型主体计算,尤其是矩阵乘、卷积、注意力和大规模模拟。
四、选型依据:从任务画像到硬件决策
硬件选型不应从“GPU更快”出发,而应从任务画像出发。建议按以下顺序判断:
- 看延迟预算:P99延迟低于10ms的在线风控,优先CPU或CPU+小GPU;延迟预算在50ms以上再考虑GPU批处理。
- 看批量规模:批量小于8时GPU利用率低,内核启动和传输开销占比高;批量大于64时GPU吞吐优势开始显现。
- 看模型结构:树模型和稀疏模型优先CPU;Transformer、CNN、大规模蒙特卡洛优先GPU。
- 看数据搬运成本:若特征在CPU内存中生成,GPU推理需额外H2D传输,需评估PCIe带宽与传输延迟是否可被计算掩盖。
- 看成本与弹性:GPU实例成本高,离线任务可用Spot实例或分时调度;在线任务需考虑GPU共享与MIG隔离。
常见误区:把离线回测的GPU吞吐结论直接搬到在线推理。离线批量大、延迟不敏感,GPU利用率高;在线单条请求下,GPU可能因内核启动和传输开销反而慢于CPU。选型必须区分在线与离线两条路径。
五、一个典型选型复盘案例
某支付风控团队最初将XGBoost模型整体迁移到GPU,期望降低延迟。实测发现:单条请求P99延迟从8ms上升到15ms,吞吐反而下降。复盘原因有三:一是批量太小,GPU并行度不足;二是特征在CPU侧生成,每次推理都要做H2D传输;三是树模型的分裂判断在GPU上分支发散严重。最终方案改为CPU推理+GPU离线批量评分,在线延迟回到6ms,离线评分吞吐提升4倍。
# 选型判断伪代码
if latency_budget < 10ms and batch_size < 8:
prefer = "CPU"
elif model_type in ["tree", "sparse"] and batch_size < 64:
prefer = "CPU"
elif model_type in ["transformer", "cnn", "monte_carlo"] and batch_size >= 64:
prefer = "GPU"
else:
prefer = "CPU+GPU hybrid"
本节的核心结论是:金融模型推理优化不是单纯追求GPU利用率,而是在延迟、吞吐、成本和模型结构之间找到匹配点。理解模型类型与任务特点是选型的前提,也是后续CPU指令级优化、GPU内核调优和混合调度策略的基础。