Re: 有人在用openMP嗎

看板Programming作者 (陳揚和)時間16年前 (2009/07/27 10:58), 編輯推噓0(007)
留言7則, 3人參與, 最新討論串3/3 (看更多)
我看網上說 OpenMP的每個thread 有自己的stack 和 heap 這我能分別在每個thread new object嗎 假設我有 一個 size為n的pointer array 然後我讓每個thread分別 new 物件 這樣可以嗎 ※ 引述《sorryChen (陳揚和)》之銘言: : 自問自答一下 : 確實只要在counter之前加上 #programa omp critical : 但是不幸的是 parallel後的時間 居然是三倍 : 我想數數的時間很快 parallel後的要併行的還要處理critical region.. : 消耗實在太大了.. 所以反而浪費時間 : ※ 引述《sorryChen (陳揚和)》之銘言: : : 用OpenMP 來平行計算 而且使用共同的記憶體 : : 常常只要在for loop前加小小的一行 就可以併行 : : 有人知道他的critical region 要怎麼標明嗎 : : 我的實際問題是我有一個字串 (DNA actually) 我想算在上面固定長度的子字串 : : 的各種pattern出現幾次 (比如說AAA AAC AAG.... 幾種pattern) : : 由於counter 是共用的 : : 那就在counter[]++前寫#pragma omp critical.. : : 這樣可能 也快不到哪去 是嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 207.151.227.14

07/27 20:46, , 1F
效能恐怕會變成笑能... Orz
07/27 20:46, 1F

07/27 20:47, , 2F
OpenMP雖然將thread高階化抽象化了...
07/27 20:47, 2F

07/27 20:48, , 3F
但本意是為了縮短運算時間, 請還是考慮低階
07/27 20:48, 3F

07/27 20:48, , 4F
低階原本的特性吧... Orz
07/27 20:48, 4F

07/27 20:49, , 5F
OpenMP不是萬能的... 請勿惡搞後嫌他不好
07/27 20:49, 5F

07/28 00:09, , 6F
感謝經驗分享
07/28 00:09, 6F

07/28 13:53, , 7F
或許你可以試試Intel TBB
07/28 13:53, 7F
文章代碼(AID): #1ARHV6Fq (Programming)
文章代碼(AID): #1ARHV6Fq (Programming)