关键词:硬件加速器、通用目的、细粒度并行性、动态规划、基因组学、依赖受限内核
-
标题:Squire: A General-Purpose Accelerator to Exploit Fine-Grain Parallelism on Dependency-Bound Kernels -
作者团队:西班牙巴塞罗那超级计算中心(BSC)、萨拉戈萨大学、加泰罗尼亚理工大学联合研发 -
https://arxiv.org/pdf/2510.20400 -
核心定位:针对高性能计算(HPC)中依赖绑定核(Dependency-Bound Kernels) 的细粒度并行性挖掘难题,提出兼顾性能、能效与灵活性的通用加速器方案,填补传统加速器在该类场景下的技术空白。 -
5000 字,阅读 18 分钟,播客 21 分钟
-
整套软硬件协同系统设计!攻克内存墙(带宽和容量):极长上下文推理的优化路径!实现 A100 2.24 倍吞吐量的推理加速器! -
7.46倍性能提升!结果重用GEMM加速器Transitive Array,LLaMA模型实现3.97倍加速与1.65倍能耗降低 -
低功耗高性能!TeLLMe:首个 FPGA 三值 LLM 加速器!三值矩阵乘法查找表和预填充注意力协同优化计算、内存和调度!
本文提出 Squire 通用加速器,旨在解决依赖受限内核难以有效利用细粒度并行性的问题。传统加速器(如 SIMD、GPU)在复杂数据依赖处理和同步、数据传输开销上存在局限,而 FPGA 和 ASIC 虽性能高效但设计复杂、缺乏灵活性。
Squire 为多核系统中每个核心配备一个加速器,包含低功耗有序工作核心(workers),可直接访问 L2 缓存并通过硬件同步模块实现快速通信。其兼容主机核心 ISA,支持最小化软件改动即可卸载任务。
通过对基数排序、动态规划等 5 个依赖受限内核的评估,Squire 在动态规划内核上提速达 7.64 倍,基于该加速器构建的端到端读映射应用提速 3.66 倍。同时,相较于 Neoverse-N1 基准,Squire 能耗降低最高 56%,面积开销仅 10.5%,在基因组学、信号处理等场景中表现突出,为依赖受限工作负载提供了高效、灵活且低开销的并行加速方案。
本文目录
-
本文目录 -
一、研究背景:依赖绑定核的痛点与传统方案的局限 -
1. 依赖绑定核的核心瓶颈:并行性挖掘难 -
2. 传统加速方案的共性缺陷:无法适配依赖绑定场景 -
二、Squire 加速器设计:以“低延迟+快同步”破解依赖难题 -
1. 系统级集成:贴近主核,减少数据迁移开销 -
2. Squire 内部核心组件:分工明确,适配依赖同步 -
3. 编程接口(API):简洁易用,降低开发成本 -
三、典型场景适配:Squire 的细粒度并行策略 -
1. 数据排序:基数排序(Radix Sort)——解决细粒度分块与合并难题 -
2. 基因组学:读映射工具(基于 Minimap2)——攻克 1D/2D 动态规划依赖 -
3. 信号处理:动态时间规整(DTW)——优化 2D 矩阵并行同步 -
四、实验评估:全面验证性能、能效与面积优势 -
1. 核心核性能:依赖越复杂,Squire 优势越显著 -
2. 同步模块有效性:硬件同步碾压软件同步 -
3. 端到端应用:读映射工具加速比最高 3.66× -
4. 能效与面积:低开销高收益 -
五、相关工作对比:Squire 的核心差异化优势 -
六、结论与未来方向 -
1. 核心贡献 -
2. 未来方向 -
七、关键问题 -
问题 1:多依赖嵌套负载下同步延迟与提速持续性及适配优化方案 -
问题 2:数千核集群扩展场景下成本能耗与 GPU 集群的优势对比 -
问题 3:主流开发框架适配瓶颈及软件成本与迁移收益的平衡逻辑
一、研究背景:依赖绑定核的痛点与传统方案的局限
1. 依赖绑定核的核心瓶颈:并行性挖掘难
在基因组学(如序列比对)、信号处理(如动态时间规整)等 HPC 关键领域,核心计算模块常表现为依赖绑定核——这类核具有“计算密集+数据依赖复杂”的特征(如动态规划、稀疏矩阵运算),且任务规模中等,难以通过常规方法拆分并行任务。
例如:生命科学中的 Smith-Waterman 序列比对、信号处理中的 Dynamic Time Warping(DTW),其计算过程依赖前序单元格结果,传统并行策略易引发同步冲突或资源浪费。
2. 传统加速方案的共性缺陷:无法适配依赖绑定场景
现有方案均存在针对性不足的问题,具体局限如下表所示,且难以同时满足“低延迟、高同步效率、灵活适配”三大需求:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
二、Squire 加速器设计:以“低延迟+快同步”破解依赖难题
为解决传统方案的缺陷,Squire 围绕“细粒度任务低延迟执行”“处理单元快同步” 两大核心原则设计,确保在依赖绑定场景下的高效性与通用性。
1. 系统级集成:贴近主核,减少数据迁移开销
-
部署架构:在多核系统中,为每一个主核(Host Core)配备 1 个 Squire 加速器,直接接入主核的 L2 缓存,与主核共享虚拟内存空间。 -
优势:避免传统加速器“数据从主存迁移至加速卡”的高延迟,依赖数据可直接从 L2 缓存读取,数据传输开销降低 60%以上。
2. Squire 内部核心组件:分工明确,适配依赖同步
|
|
|
|
|---|---|---|
| Worker 核 |
|
|
| 同步模块 |
|
- 本地计数器数组(Local Counters):适配 2D 依赖(如 DTW),支持列级任务的行间同步 |
| 控制寄存器 |
|
|
3. 编程接口(API):简洁易用,降低开发成本
Squire 提供轻量级 API,实现主核与 Worker 的协同控制,所有接口均为 ISA 原生指令,无需额外编译工具链。具体功能如下:
|
|
|
|
|
|---|---|---|---|
start_squire(f,a) |
f(参数a),重置计数器
|
|
|
stop_worker() |
|
|
|
id_worker() |
|
|
|
wait_gcounter(s) |
s
|
|
|
wait_lcounter(w,s) |
w≥s
|
|
|
三、典型场景适配:Squire 的细粒度并行策略
基于上述架构与 API,Squire 针对三类典型依赖绑定核场景,设计“问题定位-策略设计-效果验证”的完整适配方案,充分挖掘细粒度并行潜力。
1. 数据排序:基数排序(Radix Sort)——解决细粒度分块与合并难题
-
核心问题:传统排序的细粒度并行性受限于“子块排序后合并复杂”,且 SIMD 的 gather/scatter 操作导致子块处理延迟高。 -
Squire 适配策略: -
任务阈值判断:主核先判断数组规模(≥10000 元素时启用 Squire,避免小任务初始化开销); -
Worker 分块排序:Worker 按 ID 均分数组,独立执行子块排序(复用 CPU 原生排序逻辑,无需修改); -
全局同步合并:主核通过 wait_gcounter等待所有 Worker 完成排序,再用最小堆合并有序子块。 -
验证效果:16 个 Worker 时实现 1.58× 加速比,小任务(<10000 元素)直接由主核处理,避免资源浪费。
2. 基因组学:读映射工具(基于 Minimap2)——攻克 1D/2D 动态规划依赖
读映射工具的核心瓶颈为Seeding(种子生成)、Chain(1D 动态规划)、Smith-Waterman(2D 动态规划) 三大核,Squire 针对每一步的依赖特性设计适配方案:
(1)Seeding:种子排序加速
-
问题:种子生成的核心耗时为“锚点(Anchors)排序”,传统 CPU 排序并行性不足。 -
策略:复用 Squire 基数排序方案,将锚点数组分块给 Worker 排序。 -
效果:16 个 Worker 时加速比 1.32×,占读映射工具总耗时的 25%优化。
(2)Chain:1D 动态规划——解决“前序依赖”同步问题
-
问题:锚点评分 f(i)依赖前T个锚点的f(j),传统循环无法并行,GPU 同步开销占比超 16%。 -
Squire 策略: -
循环重构:反转内循环遍历顺序(从 i-T到i-1),拆分“无依赖的 α/β 计算”与“有依赖的f(j)累加”; -
轮询任务分配:Worker 按 ID 轮询处理锚点(如 4 个 Worker 处理 0/4/8...、1/5/9...); -
硬件同步保障:通过 wait_gcounter确保f(j)计算完成后再执行累加,避免数据竞争。 -
效果:32 个 Worker 时加速比 3.35×,同步开销降低至 3%以下。
(3)Smith-Waterman:2D 动态规划——适配“单元格交叉依赖”
-
问题:序列比对的 DP 矩阵单元格依赖左、上、左上单元格,SIMD 反对角线向量化需数据重排,效率低。 -
策略:复用 DTW 的 2D 依赖适配逻辑(见下文),通过本地计数器实现行级同步。 -
效果:32 个 Worker 时加速比 3.43×,比 GPU 方案减少 40%的同步延迟。
3. 信号处理:动态时间规整(DTW)——优化 2D 矩阵并行同步
-
问题:DTW 的 DP 矩阵计算依赖左、上、左上单元格,传统并行方案易出现“边界数据未就绪”问题,负载不均衡。 -
Squire 适配策略: -
列级任务分配:Worker 按连续列划分任务(如 Worker0 处理列 0-1,Worker1 处理列 2-3); -
行级硬件同步:Worker 完成一行计算后,更新自身本地计数器;下一列 Worker 通过 wait_lcounter等待前一列 Worker 完成该行计算,确保边界依赖满足; -
无数据重排:直接按原始矩阵顺序计算,避免 SIMD 的重排开销。 -
验证效果:32 个 Worker 时加速比 7.64×,16 个 Worker 已达 7.42×(性价比最优),为所有场景中并行潜力最大的案例。
四、实验评估:全面验证性能、能效与面积优势
实验基于gem5 模拟器搭建,以 Neoverse-N1 为主核基线,从核心性能、同步有效性、端到端应用、能效与面积四个维度验证 Squire 的优势。
1. 核心核性能:依赖越复杂,Squire 优势越显著
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. 同步模块有效性:硬件同步碾压软件同步
对比 Squire 硬件同步(全局/本地计数器)与软件 pthread 互斥锁(DTW 核场景):
-
16 个 Worker 时,硬件同步比软件同步快 1.69×; -
Worker 数越多,硬件同步优势越明显(软件锁竞争随 Worker 数增加呈指数级加剧,硬件同步为 O(1)开销)。
3. 端到端应用:读映射工具加速比最高 3.66×
整合 Seeding、Chain、Smith-Waterman 三大核构建读映射工具,测试不同精度基因组数据集(ONT/PBCLR/PBHF,精度 85%-99.99%):
-
高精度数据集(PBHF,99.99%):加速比 3.66×,因子任务更适配细粒度并行,SW 对齐阶段开销低; -
低精度数据集(ONT/PBCLR,85%-88%):加速比 2.27×-2.54×,因对齐阶段任务更繁重,并行优化空间受限; -
结论:测序精度越高(未来技术趋势),Squire 的加速效果越显著。
4. 能效与面积:低开销高收益
-
能耗优化:端到端应用最高降低 56%能耗(PBHF3 数据集),Squire 自身能耗仅占系统总能耗的 6%(主要通过减少主核计算时间实现); -
面积开销:16 个 Worker 的 Squire 模块(7nm 工艺)面积为 0.121 mm²,仅为主核(Neoverse-N1,1.15 mm²)的 10.5%,硬件成本极低。
五、相关工作对比:Squire 的核心差异化优势
现有通用加速器难以同时满足“可编程性、快同步、每核私有”等需求,Squire 在关键特性上实现全面覆盖:
|
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Squire |
|
|
|
|
|
|
|
核心差异:Squire 是唯一同时支持“每核私有部署(低延迟)+硬件级快速同步(解依赖)+虚拟内存共享(低数据迁移开销)”的方案,完美适配依赖绑定核的细粒度并行需求。
六、结论与未来方向
1. 核心贡献
-
技术突破:提出 Squire 通用加速器,首次为依赖绑定核提供“低延迟+快同步”的细粒度并行支持,且兼容主核 ISA,编程成本与 CPU 一致; -
同步创新:设计全局/本地计数器硬件同步机制,高效解决 1D/2D 依赖场景的同步问题,比软件同步快 1.69×; -
场景验证:在 5 个依赖绑定核与 1 个端到端读映射工具中验证,实现最高 7.64× 核加速比、3.66× 端到端加速比,能耗降 56%,面积开销仅 10.5%; -
方案复用:提供数据排序、基因组学、信号处理三大场景的适配模板,为同类依赖核优化提供参考。
2. 未来方向
-
扩展同步机制,支持更复杂的依赖模式(如 3D 动态规划); -
适配更大规模的 2D DP 核(如超长序列比对任务); -
探索多 Squire 协同优化,实现跨主核的依赖任务并行。
七、关键问题
问题 1:多依赖嵌套负载下同步延迟与提速持续性及适配优化方案
论文中 Squire 仅针对基数排序、动态规划等 5 类依赖受限内核验证了性能,那当面对多类型依赖嵌套的复杂真实负载(如多模块联动的工业控制算法)时,其硬件同步模块的通信延迟是否会显著增加,且该加速器的提速效果能否维持,目前又缺乏何种普适性优化方案?
面对多类型依赖嵌套的复杂负载,Squire 的硬件同步模块延迟虽会因通信频次增加略有上升,但仍能维持较优提速效果。
其 workers 可直接访问 L2 缓存,硬件同步模块无需跨显存等外设传输数据,基础延迟显著低于依赖外设通信的传统加速器。不过嵌套依赖会使核心间协作频次翻倍,可能导致延迟累积。
优化方案:
-
可基于其 ISA 兼容特性,采用分层任务卸载策略,将嵌套任务拆解为适配 workers 的细粒度子任务,同时压缩同步指令粒度; -
此外,借助其低功耗核心设计,可动态调整同步阈值,避免无效通信,该思路与论文中 “最小化软件改动” 的设计目标高度契合。
问题 2:数千核集群扩展场景下成本能耗与 GPU 集群的优势对比
Squire 虽宣称面积开销仅 10.5%,但这是基于单个多核核心搭配加速器的测算。若将其扩展至数千核的大规模服务器集群,这种单核心附加的硬件开销会持续累积,届时其总成本与能耗,相较于规模化部署的 GPU 集群是否仍具优势?
扩展至数千核服务器集群时,Squire 仍大概率在依赖受限负载场景下保持成本与能耗优势。
论文中 Squire 单核心附加面积开销 10.5%,是基于适配多核架构的紧凑设计,规模化部署时,其 workers 的低功耗特性会对冲硬件开销累积的影响 —— 相较于 GPU 集群处理依赖受限负载时的高同步功耗,Squire 最高 56% 的能耗降低幅度在规模化后更凸显优势。且 GPU 对依赖受限负载的提速效果本就有限,而 Squire 针对这类负载的硬件优化(如快速通信模块),在集群场景下能持续降低数据传输与同步损耗。
不过若负载转为高吞吐量的非依赖受限类型,其优势会缩小,但这恰好契合论文聚焦依赖受限工作负载的核心定位。
问题 3:主流开发框架适配瓶颈及软件成本与迁移收益的平衡逻辑
论文强调 Squire 兼容主机核心 ISA 以减少软件改动,可现有主流应用多基于 GPU、FPGA 对应的成熟开发框架与编译器生态。那在对接这些主流生态时,Squire 是否会出现适配瓶颈,且其降低的软件改动成本,能否抵消开发者适配新加速器的学习与迁移成本,这一矛盾又该如何解决?
Squire 对接主流框架时存在轻微适配瓶颈,但降低的软件改动成本可覆盖迁移成本。
适配瓶颈主要源于主流框架多针对 GPU 的 SIMD、FPGA 的定制化逻辑优化,与 Squire 的细粒度并行架构存在适配偏差。但论文明确其兼容主机核心 ISA,现有代码无需重构仅需简单标记卸载任务即可运行,大幅降低了代码迁移的改造成本。同时,依赖受限内核在主流框架下本就存在性能短板,而 Squire 在动态规划内核 7.64 倍、端到端应用 3.66 倍的提速效果,能为开发者带来显著收益。
解决适配瓶颈可依托其灵活性,开发兼容主流框架的轻量化插件,无需开发者深度学习新架构,进一步平衡迁移成本与收益。
更多推荐

