期刊文献+

以RISC-V为目标的动态二进制翻译代码质量优化方法

Quality Optimization Method of Dynamic Binary Translation Code Targeting for RISC-V
下载PDF
导出
摘要 动态二进制翻译是解决一款指令集面临生态系统壁垒问题的主流技术,通过将二进制程序从源指令集翻译成目标指令集,可以在目标指令集的处理器上运行源指令集的应用程序.动态二进制翻译技术的一大挑战是如何生成高质量的目标指令序列,尤其当源指令集和目标指令集存在差异时.为探究该问题,以RISC-V64指令集为目标指令集,分析了当RISC-V64,RISC-V32,MIPS32,x86分别作为源指令集时,影响动态二进制翻译技术翻译质量的因素.针对这些因素,分别提出相应优化方法,并借助RISC-V B扩展和RISC-V P扩展中的部分指令提升翻译质量.最后,提出一个新的动态二进制翻译程序DBT-FEMU实现优化.在模拟器和FPGA中的评估数据显示,运行SPEC CPU2006的整数基准程序时,优化方法可使目标程序所执行的动态指令数平均减少57%,平均性能达QEMU-i386的4.12倍. Dynamic binary translation is a mainstream technology to solve the problem of an instruction set facing ecological barriers.By translating the binary program of the source instruction set into the target instruction set,the application program of the source instruction set can be run on the processor of the target instruction set.A major challenge of dynamic binary translation technology is how to generate high-quality target instruction sequences,especially when there are differences between the source instruction sets and the target instruction sets.In order to explore this problem,We take RISC-V64 instruction set as the target instruction,and analyze the factors that affect the translation quality of dynamic binary translation technology when RISC-V64,RISC-V32,MIPS32 and x86 are used as source instructions respectively.In view of these factors,We propose corresponding optimization methods,and improve the translation quality with the help of some instructions in RISC-V B extension and P extension.Finally,We propose a new dynamic binary translation program DBT-FEMU and implement the above optimization technique,DBT-FEMU is evaluated in the simulator and FPGA.The evaluation data show that when running the SPEC CPU2006 integer benchmark,the above optimization techniques can reduce the number of dynamic instructions executed by the target program by an average of 57%,and the average performance of the translated target program is 4.12 times that of QEMU-i386.
作者 余子濠 陈璐 孙凝晖 包云岗 Yu Zihao;Chen Lu;Sun Ninghui;Bao Yungang(State Key Lab of processors(Institute of Computing Technology,Chinese Academy of Sciences),Beijing 100190;University of Chinese Academy of Sciences,Beijing 100049)
出处 《计算机研究与发展》 EI CSCD 北大核心 2023年第10期2322-2334,共13页 Journal of Computer Research and Development
基金 中国科学院战略性先导科技专项(C类)(XDC05030100) 国家自然科学基金重大项目(62090022) 北京市科技计划(Z221100003422003) 中国科学院青年创新促进会(2013073)。
关键词 动态二进制翻译 RISC-V 指令集 翻译质量 优化 dynamic binary translation RISC-V instruction set translation quality optimization
  • 相关文献

参考文献2

二级参考文献33

  • 1齐宁,付文,赵荣彩.二进制翻译中的库函数识别技术研究[J].计算机应用,2006,26(4):983-985. 被引量:10
  • 2唐锋,武成岗,张兆庆,杨浩.二进制翻译应用级异常处理[J].计算机研究与发展,2006,43(12):2166-2173. 被引量:5
  • 3杨浩,唐锋,谢海斌,武成岗,冯晓兵.二进制翻译中的库函数处理[J].计算机研究与发展,2006,43(12):2174-2179. 被引量:9
  • 4李剑慧,马湘宁,朱传琪.动态二进制翻译与优化技术研究[J].计算机研究与发展,2007,44(1):161-168. 被引量:24
  • 5Altman E R, Kaeli D, Sheller Y. Welcome to the opportunities of binary translation[J]. Computer, 2000, 33 (3) : 40-45.
  • 6Cai Zhanju, Liang Alei, Qi Zhengwei, et al. Performance comparison of register allocation algorithms in dynamic binary translation [C] //Proc of Int Conf on Knowledge and Systems Engineering (KSE'09). Piscataway, NJ: IEEE, 2009, 113-119.
  • 7Hsu Chunchen, Liu Pangfeng, Wang Chien-min, et al. LnQ: Building high performance dynamic binary translators with existing compiler backends [C] //Proc of Int Conf on Parallel Processing. Piscataway, NJ: IEEE, 2011: 226-234.
  • 8Ottoni G, Hartin T, Weaver C, et al. Harmonia: A transparent, efficient, and harmonious dynamic binary translator targeting the Intel architecture [C] //Proc of the 8th ACM Int Conf on Computing Frontiers. New York: ACM, 2011:1-10.
  • 9Guan Haibing, Yang Hongbo, Qi Zhengwei, et al. The optimizations in dynamic binary translation [C] //Proc of the 5th Int Conf on Ubiquitous Information Technologies and Applications. Piscataway, NJ : IEEE, 2010 : 1-6.
  • 10Bellard F. QEMU, a fast and portable dynamic translator [C] //Proc of USENIX Annual Technical Conf (USENIX ATC'05). Berkeley, CA: USENIX Association, 2005: 41- 46.

共引文献4

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部