close
附上本週投影片
http://www.slideshare.net/holmes310524/20131219-29357081
這禮拜想說YSH又要暫時跑出國了,先以測M2050 bank conflict的情形為主
讓他出國前對我的印象不要太悲慘......
說好要給CTC的computeByColumnAndTranspose的示意圖
外加計算十一種feature type數量的公式也還沒做......
comment by CTC:
page 4, 5:規格要再寫清楚一點。是以block為單位,每個block有32個bank,實驗用32個thread去1:1 R/W。
N的意思不明確,N其實!=way的數量,是32/N才會等於way數......
2-way bank conflict: 有兩個thread同時去access同一個bank
- 最好可以畫示意圖(拿來充頁面也方便[誤]),特別是哪些threads access到哪個bank,畫出來更直接更明顯
- 確認到底是不是兩個以上thread都access到同一個bank address就會conflict (定義看起來就是這樣沒錯啊......)
- 確認bank跟shared memory資料排列方式的關係 ( row-major or column-major )
- 確認原始拿資料的overhead大小跟所費的clock cycle(就page 2.看起來像是每32-bit要花2個clock cycle?)
comment by YSH:
- 同CTC,還是要把實驗內容講清楚(寫出來比較直接)
- 從簡單的開始,不然一次就跑這麼複雜的,不知道way成倍增加時所花時間差異不大的原因
- 從單一thread開始,可跑下列幾種:access同一個bank內的address (sequentially [1 by 1 and N by N 都做] and randomly 都做)、access 不同bank(選定的方式也是sequentially and randomly都做),看兩者差異到底有多大
- 多個thread,一樣跑上述那四種
- 目前R/W各跑10000/1000次,每次都是access同一筆data,那每次拿不同筆data呢?
- 確認shared memory跟stream processor之間連接的方式(單一條bus還是crossbar switch?)
- 確認會不會prefetch (if smart enough, 或許當跳著拿address 0, 10, 20的data之後,會自動prefetch 30, 40進來)
重點就是要step by step,不要隨便越級打怪啊~~~
(我這之前倒是完全沒發現直接做N-way bank conflict是越級打怪就是了......orz)
之前還有兩次(11/22跟12/12)的沒補,有空再補......
11/22, 11/23那次好慘,被兩個老師念
12/12倒是意外地順利(菸)
全站熱搜
留言列表