删除或更新信息,请邮件至freekaoyan#163.com(#换成@)

一种高效解决间接转移的反馈式静态二进制翻译方法

本站小编 Free考研考试/2022-01-01

闂備胶鎳撻悺銊╁礉閹烘梹瀚婚柣鏃傚劋鐎氭岸鏌涘▎宥呭姎闁轰讲鏅犻幃璺衡槈鏉堚晛甯ㄧ紓浣介哺缁诲牆鐣峰璺哄耿闁哄洢鍨婚崣鎰版煟閻樺弶鎼愬褌绮欓崺銏ゆ嚃閳哄倸鐨梺鍛婃处閸撴岸鎮橀幇鐗堚拺闁告挆鍐у闁汇埄鍨伴顓熺閸涘﹥缍囨い鎰╁灩楠炲姊洪崗鐓庡姢闁搞垼灏妵鎰版晸閿燂拷40%闂備礁婀辩划顖炲礉閺嶎厼鍨傛慨妯块哺鐏忓孩鎱ㄥΟ鍨厫閻忓浚浜弻銊モ槈閾忣偄顏�
闂備浇顫夋禍浠嬪礉瀹€鈧划璇差吋閸ャ劌鐨┑顔角归崺鏍焊椤忓牊鐓涘璺猴工閺嗙喐绻涙径妯哄籍濠碘剝鎸冲畷鎺戔攽閹邦剚顔曞┑鐐差嚟婵绱為埀顒勬煏閸℃鏆g€规洩缍侀、娑㈡倷閳轰椒澹曞┑顔矫壕顓犵不閺嶎灐鐟扳堪閸曨偆顑勬繛瀵稿Т閻楀繒妲愰弮鍫濈闁绘ê鐏氶幆锝夋⒒娓氬洤浜濋柡灞诲妿濞嗐垽鎮欑€电硶鏋栭梺缁樺灦钃遍柟鐤含缁辨帡寮埀顒勬偡閿旂偓鏆滅憸鐗堝笧瀹撲線鏌涢…鎴濇珮闁告艾鎳庨湁闁兼祴鏅涜ⅴ闂侀€炲苯澧梺鑺ュ⒊P濠电偞娼欓崥瀣嚌妤e啫绠熼柟鎯版閻忚櫕绻濋崹顐e暗缂佲偓婢舵劖鐓熼柍褜鍓欐俊浠嬫煕閳哄倻娲撮柡灞芥噹椤繂鐣烽崶鈺冩毇闂佽崵濮村ú銈堛亹閻愬搫鑸规い鎺戝€归崑姗€鏌曟繛褍瀚弳鐘绘⒑閸涘﹤绗掓俊顐f濡懘鍩¢崨顔惧弰闂佺粯鍔﹂崜娆愬緞瀹ュ鐓欓悗娑欋缚婢ь剟鏌熼惂鍝ョМ妤犵偛閰f俊鐑藉Ω閵夛妇浜峰┑鐐村灦濮婄懓顭垮鈧獮鍐ㄎ旈崨顔芥珫閻庡厜鍋撻柛鎰劤濞堢偓绻涚€电ǹ顎撶紓宥佸亾闂侀潧妫楅崯鎾箠閵忕姷鏆嬮柡澶庢硶閹拷40%闂備礁婀辩划顖炲礉閺嶎厼鍨傛慨妯挎硾杩濋梺绋挎湰缁诲秹宕甸敃鈧湁闁绘瑥鎳愮粔顒勬煏閸℃鏆熼柟宄扮秺椤㈡ê鈹戦崶褜浼嗛梻浣告惈閻楁粓宕滃☉銏″仧妞ゆ牗绋撻々鐑芥偣娴e摜锛嶇紒澶婄仢闇夋繝褏濮撮崯顖炲箚閸岀偞鐓ユ繛鎴炃圭€氱増绻涢悡搴☆劉缂佸倸绉归、鏇㈠閻樼數袣9闂備胶顢婇崺鏍綘闂侀€炲苯澧柛濠冩倐閹啴濮€閵堝懐顦梺绯曞墲濞茬喖鎮¢埡鍛拺闁告挆鍐у闁汇埄鍨遍幐铏繆鐎涙ɑ濯撮悷娆忓闂傤垶姊虹涵鍛牚闁稿骸宕湁婵せ鍋撻柟顔ㄥ洤鐐婇柍鍝勫暞閹綁姊洪幐搴b槈闁兼椿鍨甸妵鎰板磼閻愯尙顦梺鍝勵槹椤戞瑩宕濋崨瀛樼厸鐎规挻鍝庨崐銈夊疮閸儲鐓曠憸搴g矙韫囨稑鐒垫い鎴e劵閸忓本绻涢崨顐㈠闁诡垱妫冮弫鍐╂媴缁嬭法浠梻浣告啞閻ㄦ粍鎷呴幓鎺嶅婵炶揪缍侀弲鑼姳閹惰姤鐓曟俊銈勭閹兼悂鏌嶈閸忔稓绮堟担鍦洸闁哄洨鍠撻埞宥夊箳閹惰棄鐒垫い鎴濈仢閸婃構缂傚倷绀侀張顒€顪冮挊澹╂盯宕稿Δ鈧繚婵炶揪缍€濞咃綁宕i埀顒佺箾閹寸偞鐓ョ紒銊︽そ閸┾偓妞ゆ垶瀵х粊浼存煟椤忓懏灏﹂柟顔芥そ閺佹劙宕堕埡鍌涘劘闂備礁鎲¢懝鍓р偓姘煎墴婵$敻宕堕鍌氱ウ闂佸憡鍔栬ぐ鍐煀闁秵鐓忛柛鈽嗗幗鐎氾拷
王军,庞建民,傅立国,岳峰,张家豪
(数学工程与先进计算国家重点实验室(战略支援部队信息工程大学) 郑州 450002) (wj_xd@foxmail.com)
出版日期: 2019-04-01


基金资助:国家自然科学基金项目(61520106005,61761136014);国家重点研发计划项目(2017YFB1010000)

An Efficient Feedback Static Binary Translator for Solving Indirect Branch

Wang Jun, Pang Jianmin, Fu Liguo, Yue Feng, Zhang Jiahao
(State Key Laboratory of Mathematical Engineering and Advanced Computing (Strategic Support Force Information Engineering University), Zhengzhou 450002)
Online: 2019-04-01







摘要/Abstract


摘要: 为了在追求程序执行效率的同时解决静态二进制翻译中的间接转移问题,针对现有间接转移问题处理方法中线性遍历翻译方式代码优化较少、冗余代码较多的缺陷,提出了基于基本块翻译的反馈式静态二进制翻译方法,并结合二级地址映射表实现了间接转移目标地址的快速映射.首先,在目标可执行程序运行过程中添加监控反馈机制解决代码发现问题,对未确定的间接转移地址进行反馈,以便对源程序重新划分基本块并重新翻译执行;然后构造二级地址映射表,借助二级地址映射快速解决代码定位问题.在开源二进制翻译平台QEMU(quick emulator)上实现了反馈式静态二进制翻译框架FD-SQEMU(feedback static QEMU),并基于SPEC2006和NBENCH测试集进行测试,与QEMU相比,FD-SQEMU平均加速比分别达到3.97倍和6.94倍;与课题组之前提出的保存源程序指令全地址的静态SQEMU翻译器相比,FD-SQEMU的平均加速比达到1.18倍,最高加速比达到了1.36倍,验证了提出的框架和方法的有效性.






[1]傅立国,庞建民,王军,张家豪,岳峰. 二进制翻译正确性及优化方法的形式化模型[J]. 计算机研究与发展, 2019, 56(9): 2001-2011.
[2]傅立国,庞建民,王军,张家豪,岳峰. 动态二进制翻译中库函数处理的优化[J]. 计算机研究与发展, 2019, 56(8): 1783-1791.
[3]王军,庞建民,傅立国,岳峰,单征,张家豪. 二进制翻译中动静结合的寄存器分配优化方法[J]. 计算机研究与发展, 2019, 56(4): 708-718.
[4]卢帅兵,张明,林哲超,李虎,况晓辉,赵刚. 基于动态二进制翻译和插桩的函数调用跟踪[J]. 计算机研究与发展, 2019, 56(2): 421-430.
[5]谭捷,庞建民,单征,岳峰,卢帅兵,戴涛. 二进制翻译中冗余指令优化算法[J]. 计算机研究与发展, 2017, 54(9): 1931-1944.
[6]李战辉, 刘畅, 孟建熠, 严晓浪. 基于高速缓存负荷均衡的动态二进制翻译研究[J]. 计算机研究与发展, 2015, 52(9): 2105-2113.
[7]黄明凯,刘先华,谭明星,谢子超,程旭. 一种面向解释器的间接转移预测技术[J]. 计算机研究与发展, 2015, 52(1): 66-82.
[8]贾 宁 杨 春 佟 冬 王克义. 动态翻译系统中的间接转移关联软件预测算法[J]. 计算机研究与发展, 2014, 51(3): 661-671.
[9]王文文,武成岗,白童心,王振江,远翔,崔慧敏. 二进制翻译中标志位的模式化翻译方法[J]. 计算机研究与发展, 2014, 51(10): 2336-2347.
[10]赵天磊 唐遇星 付桂涛 贾小敏 齐树波 张民选. 利用动态二进制翻译加速应用程序行为特征分析[J]. , 2012, 49(1): 35-43.
[11]陈莉丽 沈 立 王志英 肖 侬 姚益平. 面向特定应用的计算加速器虚拟化[J]. , 2011, 48(11): 2103-2110.
[12]陈 微 王志英 肖 侬 沈 立 陆洪毅. 降低协同设计虚拟机启动开销的译码后指令缓存技术[J]. , 2011, 48(1): 19-27.
[13]陈 龙, 武成岗, 谢海斌, 崔慧敏, 张兆庆,. 二进制翻译中解析多目标分支语句的图匹配方法[J]. , 2008, 45(10): 1789-1798.
[14]谢海斌, 武成岗, 崔慧敏, 李 晶,. 二进制翻译中的X86浮点栈处理[J]. , 2007, 44(11): 1946-1954.
[15]李剑慧, 马湘宁, 朱传琪,. 动态二进制翻译与优化技术研究[J]. , 2007, 44(1): 161-168.





PDF全文下载地址:

https://crad.ict.ac.cn/CN/article/downloadArticleFile.do?attachType=PDF&id=3904
相关话题/翻译 计算机 优化 代码 计算