面向Android應(yīng)用的分支預(yù)測器對比與分析
發(fā)布時間:2017-10-14 11:30
本文關(guān)鍵詞:面向Android應(yīng)用的分支預(yù)測器對比與分析
更多相關(guān)文章: 分支預(yù)測 GShare分支預(yù)測器 Bimode分支預(yù)測器 分支目標緩沖區(qū) 虛擬PC
【摘要】:超標量超深流水線技術(shù)被普遍應(yīng)用到現(xiàn)代嵌入式處理器中。其中,分支指令的高效執(zhí)行是充分發(fā)揮硬件潛能的前提,因此現(xiàn)代處理器普遍采用分支預(yù)測技術(shù)降低分支指令造成的性能損失。另一方面,隨著Android設(shè)備的普及,Android應(yīng)用也越來越豐富。Android應(yīng)用與傳統(tǒng)benchmark存在差異,在Android應(yīng)用下對比不同分支預(yù)測器的預(yù)測準確率、探索微結(jié)構(gòu)參數(shù)對預(yù)測準確率的影響,可以為面向Android平臺的移動設(shè)備的處理器設(shè)計提供參考。本文詳細分析了Gem5仿真器中的CPU模型,通過對CPU模型的修改,從Gem5仿真器中提取出Android應(yīng)用分支Trace流并用于后續(xù)Trace仿真。本文在Android應(yīng)用場景下分析了微結(jié)構(gòu)參數(shù)對GShare和Bimode兩種分支預(yù)測器的預(yù)測準確率的影響,并在多種微結(jié)構(gòu)參數(shù)下對比了兩者的預(yù)測準確率。論文還分析了微結(jié)構(gòu)參數(shù)對BTB預(yù)測準確率的影響以及BTB預(yù)測錯誤的原因。針對BTB無法有效預(yù)測間接分支目標地址的問題,本文實現(xiàn)了VPC間接分支預(yù)測機制,并通過對比實驗驗證了該機制的有效性。實驗結(jié)果表明在Android應(yīng)用下,Bimode比GShare分支預(yù)測器在多種微結(jié)構(gòu)參數(shù)下都有更高的預(yù)測準確率。對于GShare預(yù)測器,在PHT小于4K時增大PHT可以有效增加預(yù)測準確率:Bimode預(yù)測器在PHT小于6K時增大PHT可以有效提升預(yù)測準確率:在假設(shè)跳轉(zhuǎn)方向預(yù)測完全正確的情況下,BTB在4K以下時能夠通過增加表項有效提升預(yù)測準確率。BTB增大后,無法有效預(yù)測具有多個跳轉(zhuǎn)目標的間接分支成為主要瓶頸。VPC預(yù)測機制在AsimBench下,與Bimode加BTB的預(yù)測方式相比,平均分支預(yù)測正確率從90.14%提升到92.16%,分支錯誤引起的開銷下降20.5%。
【關(guān)鍵詞】:分支預(yù)測 GShare分支預(yù)測器 Bimode分支預(yù)測器 分支目標緩沖區(qū) 虛擬PC
【學(xué)位授予單位】:東南大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2016
【分類號】:TP332;TP316
【目錄】:
- 摘要5-6
- Abstract6-9
- 第一章 緒論9-15
- 1.1 背景與意義9
- 1.2 國內(nèi)外研究現(xiàn)狀9-12
- 1.3 研究內(nèi)容與目標12-13
- 1.4 論文組織13-15
- 第二章 分支預(yù)測的作用及原理15-23
- 2.1 分支預(yù)測的作用15
- 2.2 分支跳轉(zhuǎn)方向的預(yù)測15-18
- 2.2.1 GShare分支預(yù)測器16
- 2.2.2 Bimode分支預(yù)測器16-18
- 2.3 分支目標地址的預(yù)測18-21
- 2.3.1 分支目標緩沖區(qū)18-19
- 2.3.2 Target Cache19-20
- 2.3.3 VPC的預(yù)測20-21
- 2.4 本章小結(jié)21-23
- 第三章 基于Trace的仿真和分支指令Trace流的提取23-45
- 3.1 本文使用的Android測試集23-25
- 3.2 基于Trace的仿真方法25-30
- 3.2.1 全功能仿真與Trace仿真的時間對比26-27
- 3.2.2 GShare的Trace仿真27-28
- 3.2.3 Bimode的Trace仿真28-30
- 3.2.4 BTB的Trace仿真30
- 3.3 從Gem5中提取分支Trace流的方法30-42
- 3.3.1 Gem5仿真器中的CPU模型31-33
- 3.3.2 Gem5仿真器環(huán)境的搭建33-34
- 3.3.3 Gem5中Android系統(tǒng)的啟動34-36
- 3.3.4 Gem5中Android應(yīng)用的啟動36-38
- 3.3.5 Android應(yīng)用分支Trace流提取38-42
- 3.4 Android應(yīng)用benchmark與傳統(tǒng)benchmark的對比42-44
- 3.5 本章小結(jié)44-45
- 第四章 Android應(yīng)用下的分支預(yù)測器對比與分析45-57
- 4.1 GShare與Bimode預(yù)測準確率對比45-50
- 4.2 不同微結(jié)構(gòu)參數(shù)下的BTB預(yù)測準確率50-55
- 4.3 本章小結(jié)55-57
- 第五章 Android應(yīng)用下的VPC預(yù)測57-67
- 5.1 VPC預(yù)測機制的實現(xiàn)57-63
- 5.1.1 VPC的預(yù)測過程57-60
- 5.1.2 VPC的更新過程60-63
- 5.2 VPC預(yù)測實驗結(jié)果與分析63-65
- 5.3 本章小結(jié)65-67
- 第六章 總結(jié)與展望67-69
- 6.1 總結(jié)67
- 6.2 展望67-69
- 致謝69-71
- 參考文獻71-73
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前2條
1 張世遠;于立新;;分支預(yù)測對超標量流水線性能影響分析[J];微電子學(xué)與計算機;2015年08期
2 沙子巖;孟建熠;嚴曉浪;葛海通;;降低函數(shù)調(diào)用分支別名的神經(jīng)網(wǎng)絡(luò)預(yù)測器[J];計算機應(yīng)用研究;2010年06期
中國碩士學(xué)位論文全文數(shù)據(jù)庫 前1條
1 沙子巖;基于神經(jīng)網(wǎng)絡(luò)的處理器分支預(yù)測技術(shù)研究[D];浙江大學(xué);2010年
,本文編號:1030837
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/1030837.html
最近更新
教材專著