作者 oopFoo (3d)
標題 Re: [討論] 多線程軟件設計用書
時間 Thu Jan  4 07:23:42 2024


※ 引述《musashi023 (太陽魚)》之銘言:
: 嗨蓋斯
: 最近下班在研究Qt multithreading, 對於把CPU性能榨乾覺得蠻有成就感的
: 就搞了一本 C++ Concurrency in Action 來翻翻
除非特別需要,不要自己打造輪子。現在最普及使用的是OpenMP,資源多,會的人也多。
https://www.openmp.org/resources/openmp-books/
OpenMP Books - OpenMP
[圖]
[圖]
Programming Your GPU with OpenMP - by Tom Deakin and Tim Mattson (2023)
High Performance Parallel Runtimes - by Michael Klemm and Jim Cownie (2021)
Op ...

 
都是好書可以讀。尤其"High Performance Parallel Runtimes"可以讓你了解基礎,也知道parallel programming is HARD。

我自己喜歡的是Intel TBB(Threading Building Blocks),語法比較適合我的用法。

Intel ISPC也是我喜歡的東東,不過這就有點偏門了。

: 前陣子面試
: 剛剛好跟他們主管聊到,怎麼讓多線程上鎖的成本最小化,覺得蠻酷的
: 雖然明白這本來就是多線程程序設計的重點
: 想知道有沒有專門在聊這個的書
上鎖就輸了,如果你的鎖複雜,更容易出錯。

如何重新解構資料結構去避開鎖,如何排列記憶體是Parallel Programming的重點。false sharing,很常碰到,data thrashing也是頭痛問題。

以上都是shared-memory model的問題,但要最高效能無法避免的。

這也是為什麼Erlang, goLang,這種message passing盡量避開shared-memory的問題,流行起來。Recommended。

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.70.128.119 (臺灣)
※ 作者: oopFoo 2024-01-04 07:23:42
※ 文章代碼(AID): #1bbUo2TK (Soft_Job)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1704324226.A.754.html
※ 同主題文章:
Re: [討論] 多線程軟件設計用書
01-04 07:23 oopFoo
nicetw20xx: 先謝謝大大分享~~~~~1F 01/04 09:05
devilkool: 好2F 01/04 09:13
Hsins: 推!3F 01/04 13:54
NCTU5566: 謝謝哥4F 01/04 17:15
hobnob: 推分享!5F 01/04 17:29
final01: 哥的觀念有點問題...必須等高人指出問題XD6F 01/04 18:49
a82611141: 推 tbb7F 01/04 20:44
haydou: 推8F 01/05 01:10

--
作者 oopFoo 的最新發文:
點此顯示更多發文記錄