让设备在本地
运行大模型
不加内存、不提功耗,也能运行更大的模型
我们自研 SymbolicLight 事件稀疏架构:模型与加速器一起设计,只读取被激活的权重。
SymbolicLight 事件稀疏架构
每生成一个 token,模型的中间结果里只有一部分不为零。这些非零值称为事件,由它们决定读取哪些权重。这种稀疏在训练中形成,模型保留全部权重,每个 token 用到不同的一部分,这与删除权重的剪枝不同。
瓶颈在内存带宽
稠密模型每生成一个 token,都要把全部权重从内存读一遍。内存带宽有限,模型越大,生成越慢、越耗电。设备要么只能运行小模型,要么换高带宽内存和大算力芯片,成本与功耗随之上升。
做法是少读权重
事件稀疏架构从减少读取量入手:FPGA 仿真计数显示,194M(约 1.94 亿参数)原型每个 token 约跳过 52% 的权重读取。读得少,同样的带宽就能带动更大的模型,或改用更便宜的低功耗内存。
收益要靠专用硬件
同一模型在通用 ARM 处理器上开启稀疏执行,净耗电(扣除待机功耗后的每 token 耗电)只降 11%~18%,速度不变或略慢;在 FPGA 上运行我们的加速器时,带宽越窄,稀疏执行领先越多。
原型实测
以下数据均在真机上测得。模型为 194M 原型;测试平台为商用 AMD Xilinx Alveo U50C FPGA 加速卡,运行我们自研的加速器设计;加速卡功耗由卡上传感器读取,不含主机。
1.87倍
带宽受限时,稀疏执行相对稠密执行的生成速度
同一套加速器、同一份权重,只切换是否启用稀疏执行。权重读取带宽收窄到约 2.8 GB/s(按读取上限估算)时为 1.87 倍,带宽不限时为 1.32 倍;不限带宽时另测了净耗电:稀疏执行约为稠密执行的 55%。
约1/9
每 token 净耗电,与 ARM 处理器相比
同一模型、输入 32 token、生成 128 token 的完整请求,扣除各自的待机功耗:我们的加速器 0.00912 J/token,ROCK 5T(RK3588 四个 A76 核)0.08633 J/token;含待机功耗的总耗电约为 1/2.8。ROCK 5T 按整板交流侧计,U50C 按卡上传感器计。
643.2token/s
单路生成速度
输入 32 token、生成 128 token,按仅生成计时;含提示词处理的完整请求为 518.4 token/s。
27,148轮
连续对话,加速卡全程未重启
30 分钟内完成 2,263 次会话。
token 是模型处理文本的单位,不等于汉字。能耗、速度与稳定性三项的完整测试条件见下方论文 2609.09772。
技术论文
事件稀疏架构与 FPGA 实现的完整技术细节,已在 arXiv 公开。