[問題] 有關於平行運算的書或資料可參考嗎?

看板Programming作者 (陽貨欲見孔子)時間13年前 (2010/09/29 02:12), 編輯推噓6(6015)
留言21則, 9人參與, 最新討論串1/1
想請教各位先進 現在的電腦雖然都強調多核心 甚至還多CPU 但除非軟體本身有支援 否則你還是只能當單核心來用 例如統計分析常用的SAS 好像就只支援單核心而已 我在四核心電腦上面跑 CPU資源就只吃25% 運算速度不會因而加快四倍 因此老闆可能就會說 既然現有套裝軟體不支援 那你就自已寫程式不就好了? =_= 所以我的問題是 現在的程式語言對於這方面是怎麼處理的呢? 看了ㄧ些VB的書 對於多執行緒的部分 好像就是讓你可以把ㄧ些工作丟到另一個執行緒 讓它可以同時執行 但若這些工作本身就有前後順序 例如要反覆求算慢慢收斂 那就不能拆開來跳著做了 這有其他方法解決嗎? 還是其他語言已經有現成的解決方法了? 從多核心多執行緒再延伸出去 如果有ㄧ間電腦教室40台電腦可以給你隨便用 (不上課的時候) 這樣可以怎麼利用來加快運算速度呢? 這好像屬於平行運算的層級了 不知有甚麼書或資料可以參考嗎? 懇請賜教 -- ┌───────┬───┬─────┬───┬─→ OK沒事了! Y│ Y│ Y│ Y│ Y│ 報告 知道 Y 可以 N 消息 N 可以 N 可以推 N 可以轉 N 可以 N 出狀 → 原因 → 解決 → 走漏 → 掩飾 → 給別人 → 移焦點 → 硬凹 → 你完蛋了! 況了 嗎? 嗎? 了嗎? 嗎? 嗎? 嗎? 嗎? ↓ N└──────┘Y└──────┘ 幹!為何是我? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.231.210.133 ※ 編輯: meto000 來自: 125.231.210.133 (09/29 02:14)

09/29 02:15, , 1F
我覺得Erlang在這方面很有趣 XDD
09/29 02:15, 1F

09/29 02:32, , 2F
願聞其詳?
09/29 02:32, 2F

09/29 02:32, , 3F
同電腦多核用 thread, 或 OpenMP 之類的
09/29 02:32, 3F

09/29 02:32, , 4F
多電腦用 MPI
09/29 02:32, 4F

09/29 02:34, , 5F
前後順序的就要另外想能夠同時執行方法
09/29 02:34, 5F

09/29 02:34, , 6F
不然就同時跑不同 case XDD
09/29 02:34, 6F

09/29 10:22, , 7F
據聞VS 2010內建支援多核心CPU運算.
09/29 10:22, 7F

09/29 10:35, , 8F
你可以看看MPI reference manual,但那是環境
09/29 10:35, 8F

09/29 10:36, , 9F
限定的,必須是在網格電腦上寫程式.
09/29 10:36, 9F

09/29 19:22, , 10F
VC有支援OpenMP 另外如果是Win7 +
09/29 19:22, 10F

09/29 19:22, , 11F
VC2010的話還可以用Concurrency Run-
09/29 19:22, 11F

09/29 19:22, , 12F
time去做
09/29 19:22, 12F

09/29 20:24, , 13F
記得synchronization的東西要看一下
09/29 20:24, 13F

09/29 22:40, , 14F
啟動4支SAS,每支SAS執行不同運算
09/29 22:40, 14F

09/29 22:41, , 15F
就可以充分運用4核心的運算了
09/29 22:41, 15F

09/30 01:20, , 16F
不開VM情況下,如何同時啟動四支SAS呢?
09/30 01:20, 16F

09/30 01:20, , 17F
就算可以也是各作各的,而不是速度快四倍
09/30 01:20, 17F

09/30 07:29, , 18F
要同時跑,也要顧及每個thread間會不會等
09/30 07:29, 18F

09/30 07:29, , 19F
來等去,會的話,效果不會太明顯。
09/30 07:29, 19F

09/30 07:30, , 20F
跑軟體要培養的是"耐心",和對老闆不了解
09/30 07:30, 20F

09/30 07:30, , 21F
時,要你自己寫程式的不合理要求。
09/30 07:30, 21F
文章代碼(AID): #1CeZ0fj8 (Programming)