首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用furrr函数时,是否有一种修改分配给期货的集群资源的方法?

在使用furrr函数时,是否有一种修改分配给期货的集群资源的方法?
EN

Stack Overflow用户
提问于 2020-10-30 14:50:51
回答 1查看 89关注 0票数 3

为了在slurm-managed远程机器上运行代码,我在R脚本中使用了未来的、和furrr包。

在定义未来的拓扑结构时,我将一个模板文件传递给future.bacthtools::batchtools_slurm(),并使用resources =参数定义slurm作业的计算资源。

然后,当我运行furrr::future_pwalk()函数时,每个未来都使用相同的资源(即我在batchtools_slurm()中定义的资源)进行评估。

是否有一种方法让作业使用不同的资源,取决于传递给furrr::future_pwalk()的变量

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2021-02-18 04:01:20

您可以手动调整未来的资源。

代码语言:javascript
复制
library(future)
library("future.batchtools")
library(furrr)

slurm <- future::tweak(batchtools_slurm,
                       template = "slurm_batchtools.tmpl",
                       resources=list(
                         cores = 4
                       )
plan(slurm)

slurm_batchtools.tmpl文件正在

代码语言:javascript
复制
#!/bin/bash

#SBATCH --job-name=<%= job.name %>
#SBATCH --output=<%= log.file %>
#SBATCH --error=<%= log.file %>
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=<%= resources[["cores"]] %>
#SBATCH --mem-per-cpu=10000

<%= if (array.jobs) sprintf("#SBATCH --array=1-%i", nrow(jobs)) else "" %>
Rscript -e 'batchtools::doJobCollection("<%= uri %>")'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64610676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档