Re: [請益] TLB miss rate 在multi core system 的 …
※ 引述《aoqq12 (阿任)》之銘言:
: 最近看了篇paper
: Performance Studies of Commercial Workloads on a Multi-core
: 他裡面 跑了好幾個Benchmark 測試在core數增加時,相關數據的變化如
: cpi、cache miss rate、DTLB miss rate 等等的數據
: 想請問有沒有研究過類似方向的前輩
: DTLB miss rate 在core數增加的時候 miss rate有上升的原因是什麼?
: (環境設定是在multi core system中,各core皆有一個DTLB,而不是所有core共用一個)
: 由於paper上沒細談 不過報告的時候被問到不知如何回答= ="
: 我疑問的點是,各core皆有一個DTLB,所以當Core數增加的時候,有什麼地方會影響到
: miss rate,TLB存的是位址對映資訊,有什麼情況下會像Cache被更改後,
: 需要refresh之類的嗎 ?
以下是個人直覺推測
CPU Cache refresh -> 從記憶體重抓資料
而重抓的原因是因為Cache中沒有需要的記憶體訊息
那為什麼Multi-core容易出現這種情形?
直覺是因為Multi-core在處理資料時
倘若資料在記憶體位置是線性排列
ex:
Low High
X Y
---------------------------------------------
^ ^
|-------------------| core1 cache range
|-------------------| core2 cache range
core1 core2
譬如Dual-core在處理某一段資料時
core1抓取X以後的資料作為Cache
但因為資料以線性排列在記憶體中
因此core2很容易分配到在記憶體位置Y的資料進行處理
由於core1部分快取的內容已經先被core2執行完
因此重新去記憶體要資料的機率也比較大
以上純粹個人猜想
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.44.74.44
推
09/19 23:17, , 1F
09/19 23:17, 1F
→
09/19 23:18, , 2F
09/19 23:18, 2F
→
09/19 23:19, , 3F
09/19 23:19, 3F
→
09/19 23:19, , 4F
09/19 23:19, 4F
推
09/19 23:29, , 5F
09/19 23:29, 5F
→
09/19 23:37, , 6F
09/19 23:37, 6F
→
09/19 23:38, , 7F
09/19 23:38, 7F
推
09/20 00:07, , 8F
09/20 00:07, 8F
→
09/20 00:08, , 9F
09/20 00:08, 9F
→
09/20 00:09, , 10F
09/20 00:09, 10F
→
09/20 00:10, , 11F
09/20 00:10, 11F
→
09/20 00:14, , 12F
09/20 00:14, 12F
→
08/09 19:10, , 13F
08/09 19:10, 13F
→
09/11 21:07, , 14F
09/11 21:07, 14F