Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在LSF中提交作业数组_R_Terminal_Jobs_Lsf - Fatal编程技术网

R 在LSF中提交作业数组

R 在LSF中提交作业数组,r,terminal,jobs,lsf,R,Terminal,Jobs,Lsf,我有12个文件夹,都包含一个同名的R文件(例如file.R)。文件夹的名称为m1,m2,…,m12。为了运行每个文件,我在每个文件夹中运行bsub-n2-qlong-w12:00-R“rusage[mem=25000]”-M 25000-hl R CMD BATCH file.R。是否有办法使用bsub在LSF提交系统中将其作为作业数组运行?多谢各位 有没有办法使用bsub在LSF提交系统中将其作为作业数组运行 有。使用-J“[1-12]”运行阵列作业。该作业将运行12个实例。您需要编写一个简单

我有12个文件夹,都包含一个同名的
R
文件(例如
file.R
)。文件夹的名称为
m1
m2
,…,
m12
。为了运行每个文件,我在每个文件夹中运行
bsub-n2-qlong-w12:00-R“rusage[mem=25000]”-M 25000-hl R CMD BATCH file.R
。是否有办法使用
bsub
LSF提交系统中将其作为
作业数组运行?多谢各位

有没有办法使用bsub在LSF提交系统中将其作为作业数组运行

有。使用
-J“[1-12]”
运行阵列作业。该作业将运行12个实例。您需要编写一个简单的脚本来正确设置CWD,然后启动
R
。这样的办法应该行得通。实例编号可通过环境变量
$LSB\u JOBINDEX
获得

$ cat runjob.sh 
#!/bin/sh

cd m${LSB_JOBINDEX}
exec R CMD BATCH file.R
然后像这样提交你的工作

$ bsub -n 2 -q long -W 12:00 -R "rusage[mem=25000]" -M 25000 -hl -J "[1-12]" sh runjob.sh 
Job <1164> is submitted to queue <long>.
$bsub-n2-q long-W 12:00-R“rusage[mem=25000]”-M 25000-hl-J“[1-12]”sh runjob.sh
作业已提交到队列。

如果每个文件夹中有两个文件,比如
file.R
poo.R
,我仍然可以通过添加另一行
exec R CMD BATCH poo.R
从相同的
runjob.sh
脚本运行它们吗?非常感谢。对但请删除
exec
。exec将用
R CMD BATCH file.R
替换当前进程映像。因此,第一个exec之后的任何命令都不会执行。通过删除exec,将创建一个新进程来运行
R CMD BATCH file.R
。在您的示例中,file.R和poo.R将按顺序运行。如何并行而不是按顺序运行?您可以在单独的作业数组中运行poo.R,也可以在同一作业数组中运行它。如果使用后者,则需要某种方法将数组索引映射到poo.R或file.R