[英]Rcpp and parallel
我有一個 Rcpp 例程,它被賦予 R function,然后進行各種計算。 當這樣運行時,它工作得很好。 現在我想並行運行它,然后我得到錯誤
checkForRemoteErrors(lapply(cl, recvResult)) 錯誤:4 個節點產生錯誤; 第一個錯誤:NULL 值作為符號地址傳遞
一個玩具示例在這里。 該例程應該從正態分布生成 10 個觀察值,並將平均值作為參數傳遞:
Rcpp 代碼:
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export]]
NumericVector tst(Function f, double m) {
NumericVector out=f(m);
return out;
}
和運行
f=function(m) {rnorm(10, m)}
tst(f, 5)
工作良好。 但嘗試
cl <- makeCluster(4)
z=clusterCall(cl, tst, f, 5)
導致錯誤。
在真正的例程中,f 可以是任何生成數據的例程,甚至不是基數 R 的一部分。
沃爾夫岡
我以前讀過很多關於這個主題的討論,甚至創建了一個 package,但一直收到錯誤消息。 我現在正在運行它,盡管我不確定之前的問題是什么。
無論如何,感謝您的答復!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.