【发布时间】:2021-06-10 09:25:25
【问题描述】:
我目前正在尝试使用以下代码运行并行化 RQA。
library(snow)
library(doSNOW)
library(crqa)
my_wincrqa = function(x, y){
wincrqa(x, y, windowstep = 1000, windowsize = 2000,
radius = .2, delay = 4, embed = 2, rescale = 0, normalize = 0,
mindiagline = 2, minvertline = 2, tw = 0, whiteline = F,
side = "both", method = "crqa", metric = "euclidean", datatype = "continuous")
}
cl<-makeCluster(11,type="SOCK")
start_time <- Sys.time()
WCRQA_list = clusterMap(cl, my_wincrqa, HR_list, RR_list)
end_time <- Sys.time()
end_time - start_time
不幸的是,我明白了:“
checkForRemoteErrors(val) 中的错误:2 个节点产生错误;第一的 错误:找不到函数“wincrqa”
我知道在设置并行处理时可能存在总和错误,但我无法解决它。我也尝试使用 parallel() 包进行类似的操作。
我很乐意为您提供任何帮助!
最好, 约翰逊
【问题讨论】:
-
您是否加载了
crqa包?library(crqa) -
是的,我做到了。好像和并行处理部分有关。
-
johnson24,请参阅我在原始问题中的回复。每个节点都需要知道函数的来源。
-
旁注:我建议使用 parallel 代替“传统”包 snow 和 doSNOW(附带R 自 2011 年以来)和 doParallel 代替。 parallel 包,自那以后,由同一作者完成了许多改进,而 snow 只是维持生命支持。
标签: r error-handling parallel-processing multiprocessing parallel-foreach