C_and_CPP 板


LINE

開發平台(Platform): (Ex: Win10, Linux, ...) Win7 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) OpenMP 問題(Question): 各位版大大家好 小弟最近需要加速一個function,因為function裡面只是兩層for迴圈,所以選用 OpenMP來加速。在自己寫的測試程式當中是正常可以使用的,也能確認OpenMP有發揮強 大的效果,但當我將測試程式寫回需要使用的專案中之後OpenMP的加速效果就消失了, 已確認編譯器參數有調整(/openmp),也有include omp.h,編譯無報錯,程式正常執行, 小弟經過以下兩點判斷OpenMP沒有發揮加速效果: 1.時間測試 2.使用omp_get_thread_num(),得到的值全為0 目前個人推估可能是編譯器直接略過#pragma,或是執行緒都被佔用??(有測試指定thread num給parallel for,但還是沒有效果) 但目前對於如何解決還沒有方向,希望版大們賜教! 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) void CMFC_TestSpeedUpDlg::TFunction1D(float srcMx[], float dstMx1[], float dstMx2[], int Width, int Height, float **cLUT, float **sLUT) { #pragma omp parallel for for (int u = 0; u < Width; u++) { float sigma = 0.0f; float sigma2 = 0.0f; for (int x = 0; x < Width; x++) { sigma += srcMx[x] * cLUT[u][x]; sigma2 += srcMx[x] * sLUT[u][x]; } dstMx1[u] = sigma; dstMx2[u] = sigma2; sigma = sigma2 = 0; } } 補充說明(Supplement): 開發平台(Platform): (Ex: Win10, Linux, ...) 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.87.85.162
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1479431111.A.EB0.html
1F:推 soheadsome: 因為你每次最外面的迴圈最後都要寫入那兩個陣列 11/18 10:06
2F:→ soheadsome: 所以平行的就會卡在那 11/18 10:06
3F:→ soheadsome: 平行化不一定等於加速 11/18 10:08
4F:→ ogstruggle: 感謝大大回覆QQ但是相同的code我用自己的測試小專案是 11/18 10:24
5F:→ ogstruggle: 可以的,但加到工作要用的專案上就無效,不知道跟你說 11/18 10:24
6F:→ ogstruggle: 的是否有直接關聯 11/18 10:24
7F:→ Caesar08: omp_set_num_threads? 11/18 13:29
8F:推 LiloHuang: 可考慮改用 Intel TBB Library 的 tbb::parallel_for 11/18 19:02
9F:→ ilikekotomi: 工作用專案無效是否是專案設定問題? VS我記得有選項 11/18 19:31
10F:推 LiloHuang: 樓主也有可能忘了開,開啟教學 https://goo.gl/cK8XUu 11/18 19:34
11F:→ laladeer: 你在屬性那邊 語言 omp支援有沒有開 11/21 11:03
12F:→ ogstruggle: C大:有Set過,但無效... 11/21 14:13
13F:→ ogstruggle: I大 lala:支援選項確認都開啟了 11/21 14:13
14F:→ ogstruggle: L大:tbb我沒用過,感謝提供新方向,我試試看! 11/21 14:13







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP