前言
2023-6-16 21:19:13
以下內(nèi)容源自《【計算機系統(tǒng)結(jié)構(gòu)】》
僅供學(xué)習(xí)交流使用
推薦
實驗3 Tomasulo算法【計算機系統(tǒng)結(jié)構(gòu)】
實驗四 Cache性能分析
1 實驗?zāi)康?/h3>
(1)加深對Cache的基本概念、基本組織結(jié)構(gòu)以及基本工作原理的理解。
(2)掌握Cache容量、相聯(lián)度、塊大小對Cache性能的影響。
(3)掌握降低Cache不命中率的各種方法。
2 實驗平臺
采用MyCache模擬器。
MyCache模擬器的使用方法:
(1) 雙擊MyCache.exe,啟動模擬器。
(2) 系統(tǒng)打開操作界面,如下圖所示:
MyCache-Cache模擬器
設(shè)置參數(shù)區(qū) 模擬結(jié)果顯示區(qū)
執(zhí)行控制區(qū)
(3) 可以設(shè)置的參數(shù)包括Cache的容量、塊大小、相聯(lián)度、替換算法、預(yù)取策略、寫策略、寫不命中時的調(diào)塊策略??梢灾苯訌牧斜碇羞x擇。
(4) 訪問地址可以選擇來自地址流文件,也可以選擇手動輸入。如果是前者,則可以通過單擊“瀏覽”按鈕,從模擬器所在文件夾下的“地址流”文件夾中選取地址流文件(.din)文件,然后執(zhí)行。執(zhí)行得方式可以是單步,也可以選擇一次執(zhí)行結(jié)束。如果選擇手動輸入,就可以在“執(zhí)行控制”區(qū)域中輸入塊地址,然后單擊“訪問”按鈕。系統(tǒng)會在界面的右邊顯示訪問類型、地址、塊號以及塊內(nèi)地址。
(5) 模擬結(jié)果包括:
- 訪問總次數(shù),總的不命中次數(shù),總的不命中率。
- 讀指令操作的次數(shù),其不命中次數(shù)及其不命中率。
- 讀數(shù)據(jù)操作的次數(shù),其不命中次數(shù)及其不命中率。
- 寫數(shù)據(jù)操作的次數(shù),其不命中次數(shù)及其不命中率。
- 手動輸入單次訪問的相關(guān)信息。
3 實驗內(nèi)容和步驟
3.1 Cache容量對不命中率的影響
(1) 啟動MyCache。
(2)單擊“復(fù)位”按鈕,將各參數(shù)設(shè)置為默認(rèn)值。
(3)選擇一個地址流文件。具體方法:選擇“訪問地址”→“地址流文件”選項,然后單擊“瀏覽”按鈕,從本模擬器所在的文件夾下的“地址流”文件夾中選取。
(4) 選擇不同的Cache容量,包括2KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB和256 KB,分別執(zhí)行模擬器(單擊“執(zhí)行到底”按鈕就可執(zhí)行),然后在表1中記錄各種情況下的不命中率。
地址流文件名: all.din
(5) 指明地址流文件名,以容量為橫坐標(biāo),畫出不命中率雖Cache容量變化而變化的曲線圖。
圖1 all.din文件中不同Cache容量下的不命中率
(6) 根據(jù)該模擬結(jié)果,能得出什么結(jié)論?
增加Cache容量可以有效地減少Cache的不命中率。
3.2 相聯(lián)度對不命中率的影響
(1) 單擊“復(fù)位”按鈕,將各參數(shù)設(shè)置為默認(rèn)值。此時的Cache容量為64KB。
(2) 選擇一個地址流文件。具體方法:選擇“訪問地址”→“地址流文件”選項,然后單擊“瀏覽”按鈕,從本模擬器所在的文件夾下的“地址流”文件夾中選取。
(3) 選取不同的Cache相聯(lián)度,包括直接映像、2路、4路、8路、16路和32路。分別執(zhí)行模擬器(單擊“執(zhí)行到底”按鈕),然后在表2中記錄各種情況下的不命中率。
(4) 把Cache的容量設(shè)置為256KB,重復(fù)(3)步驟填表3。
(5) 以相聯(lián)度為橫坐標(biāo),畫出在64KB和256KB的情況下不命中率隨Cache相聯(lián)度變化而變化的曲線。并指明地址流文件名。
(6) 根據(jù)模擬結(jié)果,你能得出什么結(jié)論?
提高相聯(lián)度可以減少Cache的不命中率。
3.3 Cache塊大小對不命中率的影響
(1) 單擊“復(fù)位”按鈕,將各參數(shù)設(shè)置為默認(rèn)值。
(2) 選擇一個地址流文件。具體方法:選擇“訪問地址”→“地址流文件”選項,然后單擊“瀏覽”按鈕,從本模擬器所在的文件夾下的“地址流”文件夾中選取。
(3) 選擇不同的Cache塊大小,包括16B,32B,64B,128B和256B。對于Cache的各種容量,包括2KB,8 KB,32 KB,128 KB和512 KB,分別執(zhí)行模擬器(單擊“執(zhí)行到底”),然后在表4中記錄各種情況下的不命中率。
(4) 分析Cache塊大小對不命中率的影響。
1.增強了空間局部性,減少了強制性不命中;
2.減少了Cache中塊的數(shù)目,所以有可能會增加沖突不命中。
3.4 替換算法對不命中率的影響
(1) 單擊“復(fù)位”按鈕,將各參數(shù)設(shè)置為默認(rèn)值。
(2) 選擇地址流文件all.din。
(3) 對于不同的替換算法、Cache容量和相聯(lián)度,分別執(zhí)行模擬器(單擊“執(zhí)行到底”按鈕),在表5中記錄各種情況下的不命中率。
(4) 分析不同的替換算法對Cache不命中率的影響。
在Cache容量較小時,LRU算法的不命中率低于隨機算法,當(dāng)Cache容量較大時,兩者差距不明顯。
4 實驗總結(jié)與心得
通過本次實驗,我加深了對Cache的基本概念、基本組織結(jié)構(gòu)以及基本工作原理的理解,掌握了Cache容量、相聯(lián)度、塊大小對Cache性能的影響,掌握了降低Cache不命中率的各種方法。
5 請思考
通過前面的仿真過程主要理解了影響Cache命中率的因素。命中率會影響Cache系統(tǒng)性能,但評價Cache系統(tǒng)性能應(yīng)該考慮到訪問的缺失代價的問題。更好的評價Cache系統(tǒng)性能的思想是存儲器平均訪問時間:
存儲器平均訪問時間=Cache命中時間+Cache命中缺失率╳缺失代價
請從此思路出發(fā),分析Cache性能優(yōu)化方法。用自己的語言總結(jié)這些優(yōu)化方法的思想。通過查找資料,舉出某些采用上述優(yōu)化方法機器實例。
思想:提升命中率,降低缺失代價,減少命中時間。
實例:ADM Opteron的存儲器。
最后
2023-6-16 21:26:01
你對我百般注視,
并不能構(gòu)成萬分之一的我,
卻是一覽無余的你。文章來源:http://www.zghlxwxcb.cn/news/detail-486961.html
祝大家逢考必過
點贊收藏關(guān)注哦文章來源地址http://www.zghlxwxcb.cn/news/detail-486961.html
到了這里,關(guān)于實驗4 Cache性能分析【計算機系統(tǒng)結(jié)構(gòu)】的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!