大数跨境
0
0

面向有依赖Kernels的细粒度并行通用加速器Squire:7.6倍提速与56%能耗降低!

面向有依赖Kernels的细粒度并行通用加速器Squire:7.6倍提速与56%能耗降低! NeuralTalk
2025-11-10
0
导读:本文提出 Squire 通用加速器,旨在解决依赖受限内核难以有效利用细粒度并行性的问题。提出为多核系统中每个核心配备一个加速器,包含低功耗有序工作核心,可直接访问 L2 缓存并通过硬件同步模块实现快速

关键词:硬件加速器通用目的细粒度并行性、动态规划、基因组学、依赖受限内核

  • 标题: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 分钟
相关推荐

本文提出 Squire 通用加速器,旨在解决依赖受限内核难以有效利用细粒度并行性的问题。传统加速器(如 SIMD、GPU)在复杂数据依赖处理和同步、数据传输开销上存在局限,而 FPGA 和 ASIC 虽性能高效但设计复杂、缺乏灵活性。

Squire 为多核系统中每个核心配备一个加速器,包含低功耗有序工作核心(workers),可直接访问 L2 缓存并通过硬件同步模块实现快速通信。其兼容主机核心 ISA,支持最小化软件改动即可卸载任务。

图4:Squire架构概述:(a)具有4x4片上网络(NoC)和四个内存控制器的模拟多核系统,其中每个中央路由器包含一个核心复合体和一级L3缓存;(b)一个核心复合体包含一个带有私有L1缓存、私有L2缓存和一个Squire的乱序执行(OoO)核心;(c)Squire包含一组工作单元、若干控制寄存器、一个同步模块以及一个用于与内存层次结构(L2)通信的仲裁器

通过对基数排序、动态规划等 5 个依赖受限内核的评估,Squire 在动态规划内核上提速达 7.64 倍,基于该加速器构建的端到端读映射应用提速 3.66 倍。同时,相较于 Neoverse-N1 基准,Squire 能耗降低最高 56%,面积开销仅 10.5%,在基因组学、信号处理等场景中表现突出,为依赖受限工作负载提供了高效、灵活且低开销的并行加速方案。

交流加群请在 NeuralTalk 公众号后台回复:加群

unsetunset本文目录unsetunset

  • 本文目录
  • 一、研究背景:依赖绑定核的痛点与传统方案的局限
    • 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:主流开发框架适配瓶颈及软件成本与迁移收益的平衡逻辑
交流加群请在 NeuralTalk 公众号后台回复:加群

unsetunset一、研究背景:依赖绑定核的痛点与传统方案的局限unsetunset

1. 依赖绑定核的核心瓶颈:并行性挖掘难

在基因组学(如序列比对)、信号处理(如动态时间规整)等 HPC 关键领域,核心计算模块常表现为依赖绑定核——这类核具有“计算密集+数据依赖复杂”的特征(如动态规划、稀疏矩阵运算),且任务规模中等,难以通过常规方法拆分并行任务。

例如:生命科学中的 Smith-Waterman 序列比对、信号处理中的 Dynamic Time Warping(DTW),其计算过程依赖前序单元格结果,传统并行策略易引发同步冲突或资源浪费。

2. 传统加速方案的共性缺陷:无法适配依赖绑定场景

现有方案均存在针对性不足的问题,具体局限如下表所示,且难以同时满足“低延迟、高同步效率、灵活适配”三大需求:

方案类型
核心局限
与依赖绑定核的冲突点
SIMD(CPU 向量指令)
稀疏数据处理低效(如 gather/scatter 操作延迟高)、复杂依赖无法适配
依赖绑定核的动态依赖模式需频繁调整向量执行逻辑,导致向量 lane 利用率不足 50%
GPGPU
细粒度任务的数据传输开销大、同步延迟高、小任务无法饱和计算资源
依赖绑定核的任务规模中等,GPU 线程块调度开销占比超 30%,且负载不均衡问题加剧性能损失
FPGA/ASIC
设计复杂度高、研发成本高、仅适配特定任务(灵活性差)
依赖绑定核场景多样(如 1D/2D 动态规划),定制硬件无法兼容多类依赖模式,复用性极低

unsetunset二、Squire 加速器设计:以“低延迟+快同步”破解依赖难题unsetunset

为解决传统方案的缺陷,Squire 围绕“细粒度任务低延迟执行”“处理单元快同步” 两大核心原则设计,确保在依赖绑定场景下的高效性与通用性。

1. 系统级集成:贴近主核,减少数据迁移开销

  • 部署架构:在多核系统中,为每一个主核(Host Core)配备 1 个 Squire 加速器,直接接入主核的 L2 缓存,与主核共享虚拟内存空间。
  • 优势:避免传统加速器“数据从主存迁移至加速卡”的高延迟,依赖数据可直接从 L2 缓存读取,数据传输开销降低 60%以上。

2. Squire 内部核心组件:分工明确,适配依赖同步

组件名称
功能描述
设计亮点
Worker 核
低功耗、按序执行的通用核,与主核共享 ISA(指令集),支持直接编译代码
每个 Worker 配备私有 L1I(1KB)和 L1D(8KB)缓存(经设计空间探索确定最优 size),平衡缓存命中率与面积开销
同步模块
硬件级同步机制,解决 1D/2D 依赖场景的细粒度同步问题
- 全局计数器(Global Counter):适配 1D 依赖(如 Chain 算法),确保 Worker 按序更新依赖数据
- 本地计数器数组(Local Counters):适配 2D 依赖(如 DTW),支持列级任务的行间同步
控制寄存器
主核通过 API 写入任务地址与参数,触发 Worker 执行,实现“一键卸载”
简化主核与 Squire 的交互逻辑,无需复杂驱动开发,编程门槛与 CPU 一致

3. 编程接口(API):简洁易用,降低开发成本

Squire 提供轻量级 API,实现主核与 Worker 的协同控制,所有接口均为 ISA 原生指令,无需额外编译工具链。具体功能如下:

API 调用
功能描述
调用者
核心作用
start_squire(f,a)
触发 Squire 执行函数f(参数a),重置计数器
主核
启动任务卸载,建立执行上下文
stop_worker()
暂停 Worker 执行
Worker
避免资源空耗,灵活控制执行流程
id_worker()
返回当前 Worker ID
Worker
实现任务均分(如按 ID 分配子块)
wait_gcounter(s)
等待全局计数器 ≥s
主核/Worker
解决 1D 依赖的顺序同步(如 Chain 算法)
wait_lcounter(w,s)
等待本地计数器ws
主核/Worker
解决 2D 依赖的边界同步(如 DTW 算法)

unsetunset三、典型场景适配:Squire 的细粒度并行策略unsetunset

基于上述架构与 API,Squire 针对三类典型依赖绑定核场景,设计“问题定位-策略设计-效果验证”的完整适配方案,充分挖掘细粒度并行潜力。

1. 数据排序:基数排序(Radix Sort)——解决细粒度分块与合并难题

  • 核心问题:传统排序的细粒度并行性受限于“子块排序后合并复杂”,且 SIMD 的 gather/scatter 操作导致子块处理延迟高。
  • Squire 适配策略
    1. 任务阈值判断:主核先判断数组规模(≥10000 元素时启用 Squire,避免小任务初始化开销);
    2. Worker 分块排序:Worker 按 ID 均分数组,独立执行子块排序(复用 CPU 原生排序逻辑,无需修改);
    3. 全局同步合并:主核通过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 策略
    1. 循环重构:反转内循环遍历顺序(从i-Ti-1),拆分“无依赖的 α/β 计算”与“有依赖的f(j)累加”;
    2. 轮询任务分配:Worker 按 ID 轮询处理锚点(如 4 个 Worker 处理 0/4/8...、1/5/9...);
    3. 硬件同步保障:通过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 适配策略
    1. 列级任务分配:Worker 按连续列划分任务(如 Worker0 处理列 0-1,Worker1 处理列 2-3);
    2. 行级硬件同步:Worker 完成一行计算后,更新自身本地计数器;下一列 Worker 通过wait_lcounter等待前一列 Worker 完成该行计算,确保边界依赖满足;
    3. 无数据重排:直接按原始矩阵顺序计算,避免 SIMD 的重排开销。
  • 验证效果:32 个 Worker 时加速比 7.64×,16 个 Worker 已达 7.42×(性价比最优),为所有场景中并行潜力最大的案例。

unsetunset四、实验评估:全面验证性能、能效与面积优势unsetunset

实验基于gem5 模拟器搭建,以 Neoverse-N1 为主核基线,从核心性能、同步有效性、端到端应用、能效与面积四个维度验证 Squire 的优势。

1. 核心核性能:依赖越复杂,Squire 优势越显著

核(Kernel)
最优 Worker 数
最大加速比
性能差异原因分析
基数排序(RADIX)
16
1.58×
小数据量(<10000 元素)不启用 Squire,限制并行潜力
Seeding
16
1.32×
依赖排序子任务,子块规模小,并行度有限
Chain(1D DP)
32
3.35×
1D 依赖易扩展,硬件同步开销低,并行度随 Worker 数线性增长
Smith-Waterman(2D DP)
32
3.43×
2D 依赖通过本地计数器高效同步,无数据重排开销
DTW(2D DP)
32
7.64×
2D DP 矩阵并行潜力最大,列级分配+行级同步适配最优

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%,硬件成本极低。

unsetunset五、相关工作对比:Squire 的核心差异化优势unsetunset

现有通用加速器难以同时满足“可编程性、快同步、每核私有”等需求,Squire 在关键特性上实现全面覆盖:

加速器
可编程性
丰富 ISA
灵活数据通路
虚拟内存
快速同步
每核私有
适配依赖绑定核能力
Walkers [62]
×
×
×
差(无同步支持)
Transmuter [63]
×
中(共享加速器,延迟高)
Versa [64]
×
中(共享加速器,负载不均衡)
AIM [66]
×
×
×
差(无虚拟内存,数据访问受限)
Squire
优(硬件同步+每核私有,适配 1D/2D 依赖)

核心差异:Squire 是唯一同时支持“每核私有部署(低延迟)+硬件级快速同步(解依赖)+虚拟内存共享(低数据迁移开销)”的方案,完美适配依赖绑定核的细粒度并行需求。

unsetunset六、结论与未来方向unsetunset

1. 核心贡献

  1. 技术突破:提出 Squire 通用加速器,首次为依赖绑定核提供“低延迟+快同步”的细粒度并行支持,且兼容主核 ISA,编程成本与 CPU 一致;
  2. 同步创新:设计全局/本地计数器硬件同步机制,高效解决 1D/2D 依赖场景的同步问题,比软件同步快 1.69×;
  3. 场景验证:在 5 个依赖绑定核与 1 个端到端读映射工具中验证,实现最高 7.64× 核加速比、3.66× 端到端加速比,能耗降 56%,面积开销仅 10.5%;
  4. 方案复用:提供数据排序、基因组学、信号处理三大场景的适配模板,为同类依赖核优化提供参考。

2. 未来方向

  • 扩展同步机制,支持更复杂的依赖模式(如 3D 动态规划);
  • 适配更大规模的 2D DP 核(如超长序列比对任务);
  • 探索多 Squire 协同优化,实现跨主核的依赖任务并行。

unsetunset七、关键问题unsetunset

问题 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 倍的提速效果,能为开发者带来显著收益。

解决适配瓶颈可依托其灵活性,开发兼容主流框架的轻量化插件,无需开发者深度学习新架构,进一步平衡迁移成本与收益。

更多推荐

交流加群请在 NeuralTalk 公众号后台回复:加群

【声明】内容源于网络
0
0
NeuralTalk
关注深度学习框架开发、模型压缩、低比特量化、移动端推理加速性能优化、工程化部署,v: zhushi202409
内容 517
粉丝 0
NeuralTalk 关注深度学习框架开发、模型压缩、低比特量化、移动端推理加速性能优化、工程化部署,v: zhushi202409
总阅读785
粉丝0
内容517