2014-09-12 31 views
1

我想在R中使用並行程序包運行計算時,爲每個子進程找到一個唯一的名稱。我的目標是執行'可憐的人'並行輸出,其中每個進程寫入到它自己的文件。我可以使用Sys.info()['nodename']來獲取節點名稱,但每個節點有8個進程。我似乎無法找到識別每個過程的方法。並行每個子進程的唯一名稱R

回答

1

Got it!您可以一起使用Sys.getpid()和節點名稱:

pid = Sys.getpid() 
nodename = tolower(Sys.info()['nodename']) 
id = sprintf('%s_%s',nodename,pid) 
+0

在多個節點上,PID不保證是唯一的。將Sys.info()['nodename']和Sys.getpid()組合起來會更好。 – 2014-09-12 20:55:07

+0

良好的電話,多數民衆贊成我已經做了,我已經編輯我的答案 – 2014-09-12 22:03:05

相關問題