Xar-trek: run-time execution migration among FPGAs and heterogeneous-ISA CPUs

E. Horta, Ho-Ren Chuang, Naarayanan Rao VSathish, Cesar J. Philippidis, A. Barbalace, Pierre Olivier, B. Ravindran
{"title":"Xar-trek: run-time execution migration among FPGAs and heterogeneous-ISA CPUs","authors":"E. Horta, Ho-Ren Chuang, Naarayanan Rao VSathish, Cesar J. Philippidis, A. Barbalace, Pierre Olivier, B. Ravindran","doi":"10.1145/3464298.3493388","DOIUrl":null,"url":null,"abstract":"Datacenter servers are increasingly heterogeneous: from x86 host CPUs, to ARM or RISC-V CPUs in NICs/SSDs, to FPGAs. Previous works have demonstrated that migrating application execution at run-time across heterogeneous-ISA CPUs can yield significant performance and energy gains, with relatively little programmer effort. However, FPGAs have often been overlooked in that context: hardware acceleration using FPGAs involves statically implementing select application functions, which prohibits dynamic and transparent migration. We present Xar-Trek, a new compiler and run-time software framework that overcomes this limitation. Xar-Trek compiles an application for several CPU ISAs and select application functions for acceleration on an FPGA, allowing execution migration between heterogeneous-ISA CPUs and FPGAs at run-time. Xar-Trek's run-time monitors server workloads and migrates application functions to an FPGA or to heterogeneous-ISA CPUs based on a scheduling policy. We develop a heuristic policy that uses application workload profiles to make scheduling decisions. Our evaluations conducted on a system with x86-64 server CPUs, ARM64 server CPUs, and an Alveo accelerator card reveal 88%-l% performance gains over no-migration baselines.","PeriodicalId":154994,"journal":{"name":"Proceedings of the 22nd International Middleware Conference","volume":"25 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 22nd International Middleware Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3464298.3493388","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Datacenter servers are increasingly heterogeneous: from x86 host CPUs, to ARM or RISC-V CPUs in NICs/SSDs, to FPGAs. Previous works have demonstrated that migrating application execution at run-time across heterogeneous-ISA CPUs can yield significant performance and energy gains, with relatively little programmer effort. However, FPGAs have often been overlooked in that context: hardware acceleration using FPGAs involves statically implementing select application functions, which prohibits dynamic and transparent migration. We present Xar-Trek, a new compiler and run-time software framework that overcomes this limitation. Xar-Trek compiles an application for several CPU ISAs and select application functions for acceleration on an FPGA, allowing execution migration between heterogeneous-ISA CPUs and FPGAs at run-time. Xar-Trek's run-time monitors server workloads and migrates application functions to an FPGA or to heterogeneous-ISA CPUs based on a scheduling policy. We develop a heuristic policy that uses application workload profiles to make scheduling decisions. Our evaluations conducted on a system with x86-64 server CPUs, ARM64 server CPUs, and an Alveo accelerator card reveal 88%-l% performance gains over no-migration baselines.
Xar-trek: fpga和异构isa cpu之间的运行时执行迁移
数据中心服务器越来越异构:从x86主机cpu,到网卡/ ssd中的ARM或RISC-V cpu,再到fpga。以前的工作已经证明,跨异构isa cpu在运行时迁移应用程序执行可以产生显著的性能和能量增益,而程序员的工作相对较少。然而,fpga在这种情况下经常被忽视:使用fpga的硬件加速涉及静态实现选择应用程序功能,这禁止了动态和透明的迁移。我们提出了Xar-Trek,一个新的编译器和运行时软件框架,克服了这一限制。Xar-Trek为多个CPU isa编译应用程序,并在FPGA上选择应用程序功能进行加速,允许在运行时在异构isa CPU和FPGA之间执行迁移。Xar-Trek的运行时监控服务器工作负载,并根据调度策略将应用程序功能迁移到FPGA或异构isa cpu。我们开发了一个启发式策略,该策略使用应用程序工作负载配置文件来制定调度决策。我们在一个有x86-64服务器cpu、ARM64服务器cpu和Alveo加速卡的系统上进行的评估显示,与没有迁移的基准相比,性能提高了88%- 1%。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信