gpt4 book ai didi

r - 从多个节点检测核心

转载 作者:行者123 更新时间:2023-12-02 03:00:15 24 4
gpt4 key购买 nike

我在 R 中有一个脚本,它利用了 doParallel 包和并行化的 foreach 函数。我目前正在使用 detectCores() 命令的变体注册我的集群,该命令运行良好,因为我使用的机器有 32 个内核。

我的问题是,如果我可以通过多台 Linux 机器访问 HPC 资源,是否可以从多台机器上detectCores() 并在单个 foreach< 中实现它们调用?

例如,如果我提交我的 HPC 作业以便它使用两个节点,是否可以让 detectCores() 函数生成 64 而不是 32 的值?

最佳答案

顶帖评论中的总结解决方案示例:

library("parallel")

find_workers <- function(nodes) {
nodes <- unique(nodes)
cl <- makeCluster(nodes)
on.exit(stopCluster(cl))

ns <- clusterCall(cl, fun = detectCores)
rep(nodes, times = ns)
}

workers <- find_workers(c("n1", "n2", "n3"))
cl <- makeCluster(workers)

关于r - 从多个节点检测核心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46554997/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com