中文

Xar-Trek:FPGA与异构指令集CPU间的运行时执行迁移

分布式、并行与集群计算 2021-10-29 v1

摘要

数据中心服务器日益异构化:从x86主机CPU,到NIC/SSD中的ARM或RISC-V CPU,再到FPGA。先前工作已表明,在运行时跨异构指令集CPU迁移应用执行可带来显著的性能与能耗收益,且程序员工作量相对较小。然而,FPGA在此背景下常被忽视:使用FPGA的硬件加速涉及静态实现选定的应用函数,这禁止了动态且透明的迁移。我们提出Xar-Trek,一种克服该限制的新编译器和运行时软件框架。Xar-Trek为多种CPU指令集编译应用,并为FPGA加速编译选定的应用函数,从而允许运行时在异构指令集CPU与FPGA之间迁移执行。Xar-Trek的运行时监控服务器工作负载,并基于调度策略将应用函数迁移至FPGA或异构指令集CPU。我们开发了一种利用应用工作负载画像进行调度决策的启发式策略。我们在配备x86-64服务器CPU、ARM64服务器CPU和Alveo加速卡的系统上的评估显示,相较无迁移基线有88%至1%的性能提升。

关键词

引用

@article{arxiv.2110.14751,
  title  = {Xar-Trek: Run-time Execution Migration among FPGAs and Heterogeneous-ISA CPUs},
  author = {Edson Horta and Ho-Ren Chuang and Naarayanan Rao VSathish and Cesar Philippidis and Antonio Barbalace and Pierre Olivier and Binoy Ravindran},
  journal= {arXiv preprint arXiv:2110.14751},
  year   = {2021}
}