如題...跟語言或是作業平台有關嗎?
麻煩簡易跟我說一下...謝謝...
需要對對Linux作業系統熟悉才行嗎...
2007-03-20 07:48:30 · 3 個解答 · 發問者 無垠 3 in 電腦與網際網路 ➔ 程式設計
Parallel Programming 吧…
目前的程式寫法都是這一個程式只能在一台電腦上跑… 而因為一台電腦上大多只有一個 CPU,所以你解問題的速度就被你 CPU 的速度給限制住,沒法更快…
Parallel Programming 是針對有一些特定的問題,是可以把這個問題拆成很多個較小的問題,讓多台電腦同時去解這幾個小問題,最後再將這些小問題的結果組合起來… 這就是 Parallel Programming…
這跟程式語言,作業平台沒關… 你可以用各式的語言,用任何一個平台作 Parallel Programming… 問題在於 Parallel Programming 不是適用於所有的問題的,有些問題就是沒法拆成較小的問題的,需要一步一步的算下去的,這些問題就不適合用 Parallel Programming 的方法去作…
最有名的 Parallel Programming 例子就是 SETI 了吧… 它的問題很適合 Parallel Programming 的作法,因為它的問題是要分析很多無線天文台所接受到的資料… 這些資料互相沒有關聯,所以可以把一個天文台,在某一分鐘接受到的資料,給一台電腦處理,另一分鐘接受到的資料,給另一台電腦處理…
還有很多類似型態的問題也是可以這樣作的:Stanford 大學有個 project 在作蛋白質折疊問題,而 distributed.net 有在作 蠻力破解密碼問題,等的…
2007-03-20 09:10:13 · answer #1 · answered by Dave 7 · 0⤊ 0⤋
絕大多數的程式都可以 Parallel!
只是可能沒有加速的效果!
只要能做到通訊的語言,都能拿來做 Parallel 的語言!
問題是:太累!
所以,要靠平行語言 或 在既有語言上,加個 Layer。
有問題,歡迎再問! ^_^
參考資料:碩士論文做的是與 Parallel Programming 有關的東東。
2007-03-20 18:52:02 · answer #2 · answered by ? 7 · 0⤊ 0⤋
並行計算分為時間上的並行和空間上的並行。 時間上的並行就是指流水線技術,而空間上的並行則是指用多個處理器併發的執行計算。並行計算科學中主要研究的是空間上的並行問題。
http://zh.wikipedia.org/wiki/%E5%B9%B6%E8%A1%8C%E8%AE%A1%E7%AE%97
2007-03-20 10:30:20 · answer #3 · answered by Wow 6 · 0⤊ 0⤋