第939章 CUDA决赛(4)

“我看了你的技术白皮书,去年我们也有几个基于CUDA的量化交易系统,其中有一个团队的项目被我们直接纳入了课程表体系”

张明对着选手团开口道。

他是还是今年团体赛的评委。

“但我印象没出错的话,他们的承压的交易笔数是45万笔/秒,而我看了你们的白皮书,最高理论值是120万笔/秒,落地则是30万笔/秒,这里面有什么不一样?”

郝建设听完评委老师的提问,略微组织了一下语言,开口回道。

“白皮书上所说的理论峰值是指上千个CUDA线程并行解析不同行情字段,即Tesla K40的共享内存加上全局内存合并访问优化下,单条行情解析延迟10μs,按流水线并行算,每秒能处理1/10e-6×15个SM×多warp调度≈120万笔/秒”

“但实际落地跟理论峰值的区别在于实际落地要处理丢包重传、数据校验、行情时间戳对齐,还要预留30%的性能余量避免波动”

“所以实际稳定承压30万笔/秒,这个数据完全可以覆盖现在的申鹏交易所的峰值行情,甚至还有10倍以上的冗余”

说到这,他还解释了一遍今年申鹏交易所的交易数据。

“当前申鹏交易所的Level-2行情(逐笔成交+十档买卖盘),全天约5000万笔数据,盘中峰值(比如股指期货开盘/收盘前)约2-3万笔/秒”

“我们的交易系统在承压这块,完全足够”

“OK”

张明点了点头,随即又问道。

“我注意到你们这个项目主要是风险对冲,请问你们是如何实现这项功能的?”

这个问题就轮到了金洋作答了,是他负责CUDA低延迟优化。

“关于对冲逻辑我们是这么设计的”

说着他便开始演示具体的模拟对冲,阐述也随着演示开始讲解。

“我们先把把上千个合约的实时行情、持仓数据、保证金参数全部存入GPU显存,每个CUDA线程负责一个合约的盈亏计算、一个风险因子的VaR计算,并行遍历所有持仓”

“全账户的风险指标更新延迟从CPU的300ms,压缩到12μs”

“行情每跳动一次,风险指标就同步更新一次,一旦触发预警,立刻自动平仓对冲,彻底避免穿仓”

“就是你们用CUDA把行情解析加快了,同时又把订单撮合加速了,接着又通过风险对冲将决策执行发布了出去”

张明沉默了数秒,将脑海中的画面用通俗的词汇描绘了一番。

“可以这么理解吗?”

“完全问题,您总结的就是我们所要表达出来的意思”

金洋连忙点头道。