99POS
全部 75 场景方案 7 方案白皮书 3 防损 1 计价实践 1 品类方案 1 品牌与机型 3 收银选型 16 收银指南 3 算力平台 20 外设与扫码 2 运维与验收 18
首页/ 收银选型/ 供应商说快了三倍,装到店里为什么没感觉

供应商说快了三倍,装到店里为什么没感觉

2026-10-25 收银选型 约 751 字

一句熟悉的推销

「我们这版算法比上一代快 3 倍。」

这话经常是真的,也经常在门店里失效。设备装上去,识别一笔还是那个速度;高峰期该排队还是排队。老板的结论往往是「又在吹」,供应商的结论是「你们现场网络/摄像头/光线不行」。两边都不算错,问题出在这句「快 3 倍」省掉了所有定语。

倍率是在什么条件下测出来的

算力这件事,同一段代码换个跑法,结论能反过来。三个变量最要紧:

一次跑几路。 服务器上跑模型,是几十上百个请求攒成一批一起算,摊薄了每次调用的开销。门店的摄像头是一路一路进来的,每路独立,模型一次只处理一张图。很多「批量服务」的机制,前提是同时有一堆请求可以拼起来算——这个前提在收银台上不存在。

算的是哪一段。 有的倍率只覆盖模型推理本身,不包括取图、预处理、后处理、结果回传。门店感知到的是从顾客把商品放上秤、到屏幕上跳出价格的那一秒多。

跑在哪颗芯片上。 同一颗芯片暴露给你的能力不一样:有没有某种精度的乘加单元、内存和计算是不是共用一套、有没有异步拷贝这种机制。缺一个,某类优化就直接落不了地。

有一篇论文把这件事量出来了

2026 年 10 月 arXiv 上有一篇工作(编号 2610.31479),专门测「在服务器上验证过的优化,搬到端侧还剩多少」。它挑了四类被反复验证过的优化,放到四台 Apple 芯片的机器上重跑,统一成单请求解码的负载,能对上条件的地方配一张桌面 NVIDIA 显卡做对照。

结果按类看,很不客气:

  • KV 缓存剪枝:在这批 Apple 机器上最多做到 1.75 倍端到端吞吐;但在桌面 NVIDIA GPU 上可能反而变慢。同一个方法,两台机器上符号相反。
  • 投机解码:评测到的所有方法在 Apple 上都是降速的,而同类方法在服务器 GPU 上报的是 2 到 6 倍。原因是它靠「一次猜几个、猜中就省几次」来摊薄开销,一次只跑一路的时候这笔账算不过来。
  • 移植过来的 GPU kernel:只能部分迁移,公开可用的 Metal 缺异步拷贝,能迁移的那部分最多带来 1.20 倍解码吞吐。
  • 训练后量化:收益随模型变化,没有统一答案。

论文的结论不是「这些优化没用」,而是:报告的加速比取决于技术、运行时、硬件契约、负载形态四者怎么凑在一起。换掉一样,数字就重算。

门店该怎样把这句话问回去

不需要懂 kernel,但可以把「快 3 倍」拆成五个问题:

  1. 相对谁快? 相对上一代模型,还是相对没做这项优化的同一版?后者才有意义。
  2. 在哪台机器上测的? 型号要具体,最好是我们计划采购的那一档,包括最低配那档。
  3. 同时跑几路? 一路和四路是两种结果。
  4. 算的是哪一段? 端到端,还是只算模型前向。
  5. 报的是平均值还是最慢的? 高峰期决定体验的是最慢的那几次,不是平均值。

这五个问题问下来,靠谱的供应商会给出一张表;不靠谱的会给一句「都差不多」。

门店自己能做的三个动作

  • 只认绝对时延。 不管供应商说几倍,测「放上商品到出价格」多少毫秒。基线慢的时候,快 3 倍可能仍然不能用;基线快的时候,快 1.2 倍已经够了。
  • 按自己的路数跑满。 计划装 4 路就同时开 4 路,跑一个完整的高峰时段,看最慢的那几次。
  • 换设备重测。 两个优化也会互相打架:剪枝省下的计算,可能让另一项优化失去可并行的空间,两个「各自 1.5 倍」叠起来,很少等于 2.25 倍。同一套模型放到新采购的机型上,第一件事是重测,而不是沿用旧数据。

一句话收尾

倍率是实验室里的相对数,门店付钱买的是绝对时间。谈优化的时候,先问它在什么硬件上、跑什么负载,再谈几倍——这样谈出来的数字,装到店里才不容易缩水。