计算机研究与发展

北大核心,JST,Pж(AJ),EI,CSCD

国内刊号:11-1777/TP

国际刊号:1000-1239

计算机研究与发展杂志2025年第6期:SIMD-to-RVV动态二进制翻译中的跨架构编程模型适配优化

发布日期:

作者:赖远明,李亚龙,胡瀚之,谢梦瑶,王喆,武成岗,

关键词:二进制翻译, RISC-V向量扩展, x86 SIMD, 跨架构编程模型适配, 浮点计算, 冗余设置消除, 混合翻译,

RISC-V因其开源和模块化设计等特性,已在嵌入式领域取得显著成功,并逐步向高性能计算(HPC)领域拓展.面向HPC的RISC-V硬件(如SophonSG2042多核处理器)已展现出与x86/ARM同类型产品相当的性能水平,但不完善的软件生态是阻碍其发展的最大障碍之一.开发了面向RISC-V的进程级动态二进制翻译(DBT)器RVBT,用于将成熟的x86软件生态移植到RISC-V平台,加速RISC-V在HPC领域的应用进程.针对HPC程序广泛依赖SIMD指令的特性,聚焦于解决SIMD与RVV间显著的编程模型差异导致的翻译性能瓶颈问题,提出了3项创新的优化方案.x86SIMD将数据类型硬编码于操作码,而RVV需动态配置vtype和掩码寄存器,这导致直接翻译产生了大量冗余操作,严重拉低了翻译运行的效率.通过充分利用程序数据类型的局部性,优化方案可删除跨架构适配编程模型导致的冗余设置,混合使用浮点扩展和向量扩展翻译SIMD指令并按需同步数据,大幅提升了SIMD指令的翻译运行效率.3项优化方案具备通用性,也适用于ARM平台的SIMD到RVV的翻译.实验表明,以SPECCPU2006作为测试集,优化方案对csrr,vsetvl,vsetvli指令的平均动态消除率分别达到了100%,100%和56.31%,在浮点测试集上,掩码设置操作的平均动态消除率达到了74.66%,数据的平均动态同步率为67.35%.优化后的RVBT在整点和浮点测试集上的平均运行效率达到了本地执行的47.39%和40.06%,相比优化前的加速比分别为1.21和8.31,并远超QEMU18.84%和4.81%,展现出了应用于部分HPC场景的潜力.

来源:2025年第6期

《计算机研究与发展》期刊编辑部

查看计算机研究与发展杂志2025年第6期

联系我们

  • 地址:北京中关村科学院南路6号
  • 电话:(010)62620696
  • E-mail:crad@ict.ac.cn

咨询工作人员