2011-11-11 71 views

回答

23

是的,對於初學者,請參閱High Performance Computing CRAN上的任務視圖。這列出了可用於支持單臺機器上的並行計算的軟件包的詳細信息。

從r版本2.14.0,存在一種用於通過平行包,其中包括現有多核包稍微修改版本並行計算的內置支持。 平行包有一個小插曲,你應該閱讀。您可以通過查看:

vignette(package="parallel", topic = "parallel") 

還有其他方法通過使用多線程BLAS線性代數計算的利用你的多個內核,例如。

這是否會加快你想要做的「統計計算」,這取決於那些「統計計算」是什麼。產生多個線程或工作人員需要花費間接費用來設置它們,管理它們並收集結果。一些操作看到了使用多個內核/線程的好處(一些大的,一些小的),另一些則由於這種額外的開銷而減慢。

總之,不要指望使用ň內核,而不是僅僅1

+0

請注意,要查看小插曲,您可能必須執行'vignette(package =「parallel」,topic =「parallel」)''。對我而言,如果我不添加'topic =',它只會列出小插曲。 –

+0

@徐旺確實。我的意思是說你可以通過該代碼列出它是如何被列出的 - 我不記得主題名稱,我還沒有在辦公室切換到2.14.0。只是懶惰。但會編輯以上。謝謝。 –

+0

不用擔心。從你的許多詳細的答案來看,你是懶惰的對立面! –

9

得到一個ñ次在你的計算時間減少如果你碰巧做同樣的事情,幾個*迭代(或相同的代碼幾個*不同的參數),最簡單的方法是運行幾個副本的R - OS將分配在不同的核心工作。
在相反的情況下,去學習如何使用真正的並行擴展。

爲了這個答案,少數意味着少一些或相等的核心數量。

相關問題