以下是给我一个错误。评估的函数来自fOptions包pdf的示例子部分(我确定它是正确的)。我在并行处理中做错了什么?
require(parallel)
cl <- makeCluster(6)
registerDoParallel(cl)
clusterEvalQ(cl,require(fOptions))
clusterEvalQ(cl,EuropeanOption("call", 100, 100, 0.01, 0.03, 0.5, 0.4))
结果:
checkForRemoteErrors中的错误(lapply(cl,recvResult)):6个节点 产生错误;第一个错误:没有适用的方法 'EuropeanOption'应用于类“character”的对象
答案 0 :(得分:1)
我相信功能&#34; EuropeanOption&#34;在&#34; RQuantLib&#34;中定义。包,所以你应该把它加载到worker:
clusterEvalQ(cl, require(RQuantLib))
但你应该得到一个未定义的&#34; EuropeanOption&#34;错误,所以可能正在发生其他事情。我建议您使用makeCluster outfile=''
选项,以便在工作程序中看到生成的任何错误消息。