[论文解读] FlashAbacus: A Self-Governing Flash-Based Accelerator for Low-Power Systems
FlashAbacus 是一种自管理的基于闪存的加速器,通过集成多个闪存模块与轻量级多处理器,实现在闪存内存附近直接、低功耗的内核执行与数据访问。通过采用自定义的 Flashvisor 抽象机制,消除对主机文件系统和 I/O 库的依赖,其带宽比传统异构计算中外部存储访问方式高出 127%,能耗降低 78.4%。
Energy efficiency and computing flexibility are some of the primary design constraints of heterogeneous computing. In this paper, we present FlashAbacus, a data-processing accelerator that self-governs heterogeneous kernel executions and data storage accesses by integrating many flash modules in lightweight multiprocessors. The proposed accelerator can simultaneously process data from different applications with diverse types of operational functions, and it allows multiple kernels to directly access flash without the assistance of a host-level file system or an I/O runtime library. We prototype FlashAbacus on a multicore-based PCIe platform that connects to FPGA-based flash controllers with a 20 nm node process. The evaluation results show that FlashAbacus can improve the bandwidth of data processing by 127%, while reducing energy consumption by 78.4%, as compared to a conventional method of heterogeneous computing. \blfootnote{This paper is accepted by and will be published at 2018 EuroSys. This document is presented to ensure timely dissemination of scholarly and technical work.
研究动机与目标
- 解决低功耗异构加速器中因外部存储访问导致的高能耗与性能瓶颈问题。
- 克服传统加速器依赖主机端文件系统和 I/O 库进行闪存访问的局限性。
- 在单一加速器平台上实现对闪存内存的直接、高效且安全的多内核执行。
- 通过最小化软硬件开销,将处理与存储紧密耦合,提升能效与系统带宽。
- 设计一种自管理的加速器,可动态调度内核并管理闪存访问,无需外部操作系统或运行时支持。
提出的方法
- 将数十个闪存模块与轻量级多处理器集成,形成单一、低功耗的数据处理单元。
- 采用 Flashvisor——一种自定义虚拟化层——将内核数据段直接映射到物理闪存内存,无需修改指令集架构。
- 使用范围锁机制,防止多个内核并发访问闪存时导致的数据不一致。
- 将闪存管理任务(如磨损均衡、垃圾回收)从主处理核心卸载至专用处理器,降低核心开销。
- 通过检测并利用数据并行性,实现跨内核的独立代码块的乱序执行。
- 基于 PCIe 接口的 FPGA 平台部署加速器,采用 20nm 闪存控制器进行原型实现与真实性能评估。
实验结果
研究问题
- RQ1自管理的加速器能否消除在基于闪存的数据处理中对主机级文件系统和 I/O 库的依赖?
- RQ2如何高效调度并隔离闪存内存上的多内核执行,以最大化资源利用率并最小化能耗?
- RQ3通过虚拟化层实现对闪存的直接访问,在带宽提升与能耗降低方面,相较于传统外部存储访问模式能提升多少?
- RQ4在无传统操作系统的前提下,将闪存固件管理功能集成于加速器内部,其性能与能耗开销如何?
- RQ5基于轻量级 FPGA 的加速器能否实现与采用外部 SSD 的传统多核加速器相当或更优的性能与能效?
主要发现
- 与传统异构计算中采用外部存储访问的方式相比,FlashAbacus 将数据处理带宽提升了 127%。
- 该加速器相较基线方法将能耗降低了 78.4%,显著提升了能效表现。
- 通过实现内核在闪存上的直接执行与数据访问,FlashAbacus 消除了 49% 的总执行时间与 85% 的总系统能耗,主要来自数据传输。
- Flashvisor 抽象机制实现了对闪存内存的直接、安全且高效的访问,无需修改指令集架构,也无需依赖主机端存储栈。
- 基于 PCIe 接口的 FPGA 平台与 20nm 闪存控制器的原型实现,验证了自管理设计的可行性与性能优势。
- 该方案通过处理与存储的紧密耦合,最小化数据移动,并实现多内核的动态、依赖感知调度,从而实现高性能与低能耗。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。