第106章 专题报告(8 / 11)
屏幕上显示的,既不是那块出尽风头的江氏砖,也不是什么非周期替代系统。
而是一张对於系统程式设计师来说犹如噩梦般的profiler火焰图。
在屏幕那密密麻麻的图表中,有一大片代表著极高cpu周期的深红色区域。
而这片深红色,竟然诡异地全部堆积在最底层几个名字不起眼的函数名上。
rank5_inline
small_sort_bucket
top3_window
median7_fast
陈启明指著那张仿佛在流血的火焰图,认真地看著江临。
“你刚才在台上讲解你的mps时,我这样一个搞底层系统的,听到的其实完全是另外一件事。”
他用手指点了点屏幕。
“你为了找到那块正確的砖,把一个庞大到甚至趋於无限的局部空间状態,精妙地压缩成了机器能够穷举搜索,人类能够覆核,並且最终结果能够留下一条无可辩驳的拓扑证据链的形式。这个状態压缩和搜索能力,江临同学,在我们计算机底层库优化这边,可能,我是说可能,有巨大的用处。”
江临微微眯起眼睛,看著屏幕上那张刺眼的火焰图上,说:“陈老师,这看起来,像是一条庞大的数据流处理或者审计流水线?”
“你说的没错,这就是一条普通的业务数据审计流水线。”
陈启明有些惊讶於江临的敏锐。
“这里面没有任何今年最火的大模型(llm),没有什么复杂的ai算法,没有什么看起来能够在顶会上吹嘘的高大上理论。最热最耗时的这几个地方,其实是一些底层的短数组秩计算、微小窗口的排序、求前k个极值,以及微小的哈希分桶操作。”
说著,陈启明双击滑鼠,把其中那个名为 median7_fast 的函数点开。
代码出乎意料的短。
全是用c语言內联汇编手写的,只有不到二十行,充斥著晦涩的寄存器操作和条件传送指令。
“你看著也觉得这种东西很微不足道,对吧?”
陈启明苦笑了一声。
“这种微內核的小程序,单次调用的开销,確实只有可怜的几纳秒,十几纳秒。放在一行的基准测试里,它快一点慢一点,简直不值得一提。”
陈启明说到这里猛地抬起头,目光灼灼地盯著江临。
“但在真实批处理场景里,它一天会被机械地调用上亿次。”
江临的目光落在屏幕上那几个普通的函数名上。
一瞬间,他的思绪再次不受控制地飘回了废土世界。
他想起了在艰苦的条件下,为了解析等离子体异构数据。
他在自己那个老旧的终端上,痛苦地维护过的那个旧因子库。
在那里,同样充斥著几千万次枯燥的小排序操作。
那时候,他只是觉得那些东西很烦人,一群永远拍不死的蚊子。 ↑返回顶部↑
而是一张对於系统程式设计师来说犹如噩梦般的profiler火焰图。
在屏幕那密密麻麻的图表中,有一大片代表著极高cpu周期的深红色区域。
而这片深红色,竟然诡异地全部堆积在最底层几个名字不起眼的函数名上。
rank5_inline
small_sort_bucket
top3_window
median7_fast
陈启明指著那张仿佛在流血的火焰图,认真地看著江临。
“你刚才在台上讲解你的mps时,我这样一个搞底层系统的,听到的其实完全是另外一件事。”
他用手指点了点屏幕。
“你为了找到那块正確的砖,把一个庞大到甚至趋於无限的局部空间状態,精妙地压缩成了机器能够穷举搜索,人类能够覆核,並且最终结果能够留下一条无可辩驳的拓扑证据链的形式。这个状態压缩和搜索能力,江临同学,在我们计算机底层库优化这边,可能,我是说可能,有巨大的用处。”
江临微微眯起眼睛,看著屏幕上那张刺眼的火焰图上,说:“陈老师,这看起来,像是一条庞大的数据流处理或者审计流水线?”
“你说的没错,这就是一条普通的业务数据审计流水线。”
陈启明有些惊讶於江临的敏锐。
“这里面没有任何今年最火的大模型(llm),没有什么复杂的ai算法,没有什么看起来能够在顶会上吹嘘的高大上理论。最热最耗时的这几个地方,其实是一些底层的短数组秩计算、微小窗口的排序、求前k个极值,以及微小的哈希分桶操作。”
说著,陈启明双击滑鼠,把其中那个名为 median7_fast 的函数点开。
代码出乎意料的短。
全是用c语言內联汇编手写的,只有不到二十行,充斥著晦涩的寄存器操作和条件传送指令。
“你看著也觉得这种东西很微不足道,对吧?”
陈启明苦笑了一声。
“这种微內核的小程序,单次调用的开销,確实只有可怜的几纳秒,十几纳秒。放在一行的基准测试里,它快一点慢一点,简直不值得一提。”
陈启明说到这里猛地抬起头,目光灼灼地盯著江临。
“但在真实批处理场景里,它一天会被机械地调用上亿次。”
江临的目光落在屏幕上那几个普通的函数名上。
一瞬间,他的思绪再次不受控制地飘回了废土世界。
他想起了在艰苦的条件下,为了解析等离子体异构数据。
他在自己那个老旧的终端上,痛苦地维护过的那个旧因子库。
在那里,同样充斥著几千万次枯燥的小排序操作。
那时候,他只是觉得那些东西很烦人,一群永远拍不死的蚊子。 ↑返回顶部↑