Re: 多個程式共用記憶體空間
※ 引述《sorryChen (陳揚和)》之銘言:
: 從來沒寫過分散式計算的程式 有誤請多多包含
: 我看了一下OpenMP的範例 感覺上滿簡單的耶 http://en.wikipedia.org/wiki/OpenMP
: 至少那個hello world 範例 在g++ 編譯一跑就可以有幾個core就跑幾個 "thread?"
: 正是我要的... 雖然還不知道這樣能夠變快多少 說不定因為memory 頻寬反而更慢
: 版友建議的MMAP還正在研究..不知道優缺點為何
OpenMP基本上是針對, 單台電腦上多個CPU(或多核), 而在最少改變程式碼的情況下
進行平行化, 使用者只要加入一些編譯上的註解, 編譯器的選項, 就可以完成平行化
Intel的TBB也是差不多的, 但TBB實際上有一些template library,
然後使用者實際上要修改的是比OpenMP來得多許多
至於MPI, 那是針對多台電腦平行處理開發的... 資料經過切割,
執行時, 排程器會幫你分配給不同的電腦, 之後排程器會去組合這些資料
如果你不是超大型的資料庫或是科學/學術方面的計算, 應該都不會用到MPI的
OpenMP應該是最簡單入門的東西
基本上OpenMP幾乎不需要改動程式碼, 大多只要加編譯註解
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.38.252
→
05/07 14:38, , 1F
05/07 14:38, 1F
推
05/08 00:28, , 2F
05/08 00:28, 2F
推
05/11 11:35, , 3F
05/11 11:35, 3F
→
05/22 05:11, , 4F
05/22 05:11, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):