- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的目标是重复运行 R 脚本,每次使用一组不同参数。
为此,我一直在使用 bash 脚本通过循环输入文件将命令行参数传递给 R 脚本,其中每一行包含 7 个参数的不同组合。
输入文件如下所示:
10 food 0.00005 0.002 1 OBSERVED 0
10 food 0.00005 0.002 1 OBSERVED 240
10 food 0.00005 0.002 1 OBSERVED 480
10 food 0.00005 0.002 1 OBSERVED 720
10 food 0.00005 0.002 1 OBSERVED 960
10 food 0.00005 0.002 1 OBSERVED 1200
传递命令行参数的 R 脚本是这样开始的:
commandArgs(trailingOnly=FALSE)
A <- as.numeric (commandArgs()[as.numeric(length(commandArgs()) -6 )])
B <- commandArgs()[as.numeric(length(commandArgs()) -5 )]
C <- as.numeric (commandArgs()[as.numeric(length(commandArgs()) -4 )])
D <- as.numeric (commandArgs()[as.numeric(length(commandArgs()) -3 )])
E <- as.numeric (commandArgs()[as.numeric(length(commandArgs()) -2 )])
F <- commandArgs()[as.numeric(length(commandArgs()) -1 )]
G <- as.numeric (commandArgs()[as.numeric(length(commandArgs()) )])
读取这些内容并调度 R 脚本的 bash 循环如下;
#!/bin/bash
N=0
cat Input.txt | while read LINE ; do
N=$((N+1))
echo "R --no-save < /home/trichard/Script.R" "$LINE" | bsub -N -q priority -R "select[model==Xeon5450]"
done
但是,问题是 Input.txt 中有数百万行,所以这种方法太慢了(它会阻止其他 LSF 用户提交他们自己的作业)。
那么,问题是,如何使用 LSF 数组执行上述操作?
最佳答案
主要技巧是从输入文件中提取第 n
行。假设你在一个类 Unix 系统上,你可以使用“sed”命令来做到这一点。这是一个例子:
N=$(wc -l < input.txt)
echo 'R --no-save -f Script.R --args $(sed "${LSB_JOBINDEX}q;d" input.txt)' |
bsub -J "R_Job[1-$N]" -N -q priority -R "select[model==Xeon5450]"
正确的参数引用有点棘手,但在这个例子中非常重要。
请注意,这使用 R“--args”选项来避免有关无法识别参数的警告消息。我还建议在 R 脚本中使用 commandArgs(trailingOnly=TRUE)
,这样您就只会看到感兴趣的参数。
关于r - 在 LSF 中指定作业数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34422491/
我想使用 Platform LSF 提交作业,并将输出放置在文件 (bsub -o) 中,但末尾不包含作业报告。使用bsub -N 从文件中删除作业报告,而是通过电子邮件发送报告。有没有办法完全抑制?
我对 LSF 平台有疑问,我无法解决问题。 出于脚本原因,我需要使用 perl 脚本检查带有“bjobs”(和其他 b***)的正在运行/待处理的作业。 由于某种原因它没有工作,我能够查看以下错误消息
bjobs -l 给出了工作的详细描述,其中 CWD 分为 3 行。我想要一个可以可靠地为我获取 CWD 的命令。 最佳答案 如果您使用的是最新版本的 LSF(我相信是 9.1.2+),您可以使用 b
假设我使用类似 bsub pwd 的东西提交了一份工作.现在我想获取该作业的作业 ID,以便为下一个作业构建依赖项。有什么方法可以让 bsub 返回作业 ID? 最佳答案 作为引用,这是迄今为止我能想
是否有任何选项可以决定我可以在 LSF 中分配多少内存? 我试过 bsub -R "rusage[mem=10000]" sleep 1000s 但是当我使用“bjobs -l”检查资源时 我明白了:
我正在开发一个多线程数字运算应用程序,我们称之为 myprogram .我打算跑myprogram在 IBM 的 LSF 网格上。 LSF 允许在不同机器的 CPU 上调度作业。例如,bsub -n
我正在尝试使用 bsub 将命令提交给 LSF 调度程序,但该命令包含一个必须用引号引起来并包含分号的参数值。 这是一个简单的命令来说明我的问题 bsub -o t.o -e t.e echo "fo
我的目标是重复运行 R 脚本,每次使用一组不同参数。 为此,我一直在使用 bash 脚本通过循环输入文件将命令行参数传递给 R 脚本,其中每一行包含 7 个参数的不同组合。 输入文件如下所示: 10
我正在尝试将作业数组中的作业索引作为参数传递给另一个 bash 脚本。 numSims=3 numTreatments=6 # uses numTreatments top rows of param
我们在 Linux 中通过 bsub 命令执行我们的工作申请操作系统。当作业完成时,从 LSF 存档中检索作业信息的命令是什么。我知道有像 bacct jobNo 这样的命令。但它不会检索信息。请帮忙
在平时的工作中,我总是看到这样的bsub命令: bsub -q int_l -R "ruseage [specman=1:nc_specman=1:evc_verisity_ahb=1:evc_ver
我正在尝试使用子进程在 python 代码中运行 LSF 命令“bjobs”,但我无法将输出放入变量 我已经尝试过但失败的方法如下: proc = subprocess.Popen(['bjobs']
用户使用 bsub 在 LSF 上启动了一个作业。从 jobId 可以知道执行了哪个命令,但无法确定该命令的完整路径 Job , User , Project , Interactive pseudo
我们在公司内部做一些文件处理\计算简单地说,我们有一份工作或任务涉及读取一个包含超过十亿条记录的巨大文件,解析文件并进行一些清理并将清理后的数据写入另一个文件。我们有数百个这样的工作,它们不断地被创建
我必须在使用 LSF 作为提交作业平台的计算机集群上运行一些基准测试。我需要在不同的数据库上运行这些基准测试。其中一些需要在监听来自客户端的连接之前运行服务器(如 PostgreSQL 或 Redis
有没有办法检查我的工作在 LSF 中的位置?排队? 如果我运行: bjobs -u all -q my_queue 我从 my_queue 中的所有用户那里得到了一份工作列表,但是这个列表是按照我的工
我有一个由 cron 调用的脚本来运行 LSF 作业。 我想知道该作业何时提交以及何时完成。 The-Powers-That-Be 已决定禁用电子邮件通知。所以我正在编写这个脚本来将相关信息输出到日志
我有一个 bash 脚本,它通过 LSF 排队系统命令“bqueues”的输出监视集群中的作业。脚本运行良好。现在我想创建一个调用这个脚本的 crontab 条目。问题是与 bqueues 相关的所有
有没有办法将 cgroups.cpuset 与 lsf 一起使用?看起来我们只能使用 cgroups 的 freezer 和 acct 以及 LFS 的 v9.1。 最佳答案 对 cpuset 的支持
我正在将一个由 OpenMP 并行化的程序移动到集群。该集群使用 Lava 1.0 作为调度程序,每个节点有 8 个核心。我在作业脚本中使用了 MPI 包装器来进行多主机并行。 这是作业脚本: #BS
我是一名优秀的程序员,十分优秀!