看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: Win10, Linux, ...) win7/win10/linux 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) vc++ / gcc 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) openCL / openMP / C++11 問題(Question): 跑模擬想要加速 想要的是CPU的多執行緒 目前爬文大致知道有 openCL / openMP / C++11 有多核心的library C++11的多執行緒好像來自於boost (?) openCL是比較偏向GPU那方面的多執行緒,因為伺服器沒有顯卡資源可以用 所以目前應該是openMP與C++ 11在選擇 openMP的優點好像是語法使用容易,3.0版本之後也都支援Data / task parallelism C++11的優點不太確定 但根據爬文的結果 https://software.intel.com/en-us/articles/choosing-the-right-threading- framework https://i.imgur.com/S46pILI.png 目前找資料的是覺得 openMP好像沒有書比較深入的講解 C++11有找到 C++並行程式設計 多執行緒實務 目前應該規劃是會以Data parallelism為主 未來可能會切一些做task parallelism 想問大家是怎麼挑要用哪一種來實作多執行緒? -- 標題 [笑話] 唐三藏的願望 唐三藏:八戒,你跑兩步給為師看看。 八 戒:師父,你為啥突然想看徒兒跑步? 唐三藏:哎啊!慚愧,為師自幼在寺中長大,既沒吃過豬肉,也沒看過豬跑步。
changhua5566:我想你也沒被豬噓過01/16 21:40
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.204.170 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1567679544.A.C74.html
EricTCartman: 當然是用TBB上啊 09/05 19:03
ofd168: 電腦和伺服器都是用AMD cpu,這樣也可以上嗎 09/05 19:53
Schottky: 還有 pthread 啊 XDDD 09/05 21:44
Bencrie: OpenCL 可以跑純 CPU 啊 09/05 22:43
ofd168: 想問這麼多種,大家是怎麼做選擇呢 09/05 22:59
LiloHuang: TBB 09/05 23:18
Schottky: 小學生才做選擇,我全都要 09/06 01:42
Schottky: 每種都寫一遍再比較看看,反正語法上都沒有很難 09/06 01:46
Schottky: 麻煩的是演算法要怎麼改成可以平行處理吧,平行化之後 09/06 01:46
Schottky: 反而比原本更慢的例子並不少見 09/06 01:46
Schottky: 要簡單地立刻導入舊 code 我推 OpenMP 09/06 01:48
ofd168: 好的,謝謝大大 09/06 23:04
a1u1usul3: 學習歷程可以從openmp→ pthread→opencl/cuda 09/07 01:58
a1u1usul3: 如果第一步改用openmp就卡關可能是演算法不適合以for l 09/07 02:08
a1u1usul3: oop切分,可能就要考慮用更有彈性的套件去寫如pthread 09/07 02:08
a1u1usul3: 和std thread 09/07 02:08
dh4mve: cpp-taskflow 09/07 19:57