[問題] OpenCL GPU benchmark

看板C_and_CPP作者 (令狐瑜)時間7年前 (2016/10/22 08:37), 編輯推噓3(303)
留言6則, 2人參與, 最新討論串1/3 (看更多)
開發平台(Platform): (Ex: Win10, Linux, ...) Linux 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) g++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) -lOpenCL 問題(Question): 小弟目前專題是寫OpenCL的benchmark for Intel Graphics 現在正努力測出cache size, cache line size, memory bandwidth 理論上都有很直覺的測量方法 例如cache size就是改變array大小然後一直存取element看access time變化 cache line size就是改access時的stride大小 memory bandwidth就是從host copy到device然後測時間 現在遇到兩個問題 1. 根本不知道Intel Graphic的memory架構 網路上相關資料極少(我都看英文的) 連Intel自己也沒有release document 2. 按照我上面說的方法測試 得出來一堆沒用的資料 像是access time如亂數一般 根本看不出來明顯的上升trend memory bandwidth理論上是測copy kernel的執行時間之後就可以算 可是不管我data多大 執行時間都差不多 我確定我有加clFinish() 也有設blocking flag = true 總之算是滿大的瓶頸 希望有高手或是有經驗的人能讓我請教 麻煩了 有空回答我問題的人可以在下面留言或是站內 萬分感謝 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 128.61.97.245 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1477096632.A.5C6.html

10/24 16:03, , 1F
我記得intel的內顯都是有LLC,所以都是看到同樣的memory
10/24 16:03, 1F

10/24 16:04, , 2F
address,所以才測不出來memory copy的時間
10/24 16:04, 2F

10/25 22:52, , 4F
上面這個不是你要的嗎? 是幾年前的HSW就是了....@_@"
10/25 22:52, 4F

10/25 23:00, , 5F
這裡有Gen8的 - https://goo.gl/cpzQP5
10/25 23:00, 5F

10/25 23:09, , 6F
10/25 23:09, 6F
文章代碼(AID): #1O2hIuN6 (C_and_CPP)
文章代碼(AID): #1O2hIuN6 (C_and_CPP)