2012-12-24 45 views
1

我從網上了解到,Revolution R允許多線程並優化我的R腳本的運行。r - 革命R - 我的原始R腳本需要修改嗎?

我的問題是:安裝Revolution R後,如果我在Revolution R環境下運行我的R腳本,它會自動優化我的R腳本的運行嗎?或者我需要修改我的R腳本以便讓Revolution R優化我的R腳本的運行?

非常感謝。

回答

4

我認爲你的術語可能需要一些改進。您可能需要將多處理與多線程區分開來。 Revolution R鏈接到Windows的多線程BLAS庫,否則可能無法使用,除非您編譯了您的版本。這是否會改善你的表現顯然取決於你使用的功能。

要在R中,使用多處理,則需要適當的設置你的機器資源,然後使用分配parallizable任務的代碼。這些似乎是您在修改腳本時詢問的應用程序。與過去的R相比,Revo-R在這方面有優勢,但在最後幾個版本中,「並行」包已經可供所有用戶使用。

+0

謝謝,那麼在Revo R中,我是否需要爲多線程分配CPU內核?如果我不分配,按說應該會自動使用多線程我所有的CPU核心,對不對? –

+0

正如我所說的「多線程」是BLAS(和自動)的特徵。但是這如何影響性能取決於任務和代碼。如果通過多處理可以更有效地完成任務,那麼您需要使用適當的方法。 –

2

Revo R擁有多線程BLAS,這不需要更改腳本。

GNU R或Standard R當然也可以使用多線程BLAS,詳見Appendix A.3.1 of the R Installation and Administration manual

+0

謝謝,那麼在Revo R中,我是否需要爲多線程分配CPU內核?如果我不分配,據說它應該自動使用我所有的CPU核心進行多線程,對吧? –