- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前编写了一个 R 脚本来执行种群遗传模拟,然后将包含我的结果的表格写入文本文件。我想以某种方式使用数组作业并行运行此脚本的多个实例(我大学的集群使用 SGE),当它全部完成后,我将生成对应于每个作业的结果文件(Results_1.txt、Results_2.txt 等) .).
花了下午的大部分时间阅读并试图弄清楚如何做到这一点,但并没有真正找到与我正在尝试做的事情相符的任何东西。我想知道是否有人可以提供和示例,或者指出我可以阅读的方向以帮助解决这个问题。
最佳答案
归结为 mithrado 对基本要点的回答:
创建作业脚本,pop_gen.bash
,它可能会或可能不会将 SGE 任务 ID 参数作为输入,将结果存储在由相同 SGE 任务 ID 标识的特定文件中:
#!/bin/bash
Rscript pop_gen.R ${SGE_TASK_ID} > Results_${SGE_TASK_ID}.txt
将此脚本作为作业数组提交,例如1000 个职位:
qsub -t 1-1000 pop_gen.bash
Grid Engine 将执行 pop_gen.bash 1000 次,每次将 SGE_TASK_ID 设置为 1-1000 之间的值。
此外,如上所述,通过将 SGE_TASK_ID 作为命令行变量传递给 pop_gen.R
,您可以使用 SGE_TASK_ID 写入输出文件:
args <- commandArgs(trailingOnly = TRUE)
out.file <- paste("Results_", args[1], ".txt", sep="")
# d <- "some data frame"
write.table(d, file=out.file)
HTH
关于arrays - SGE 数组作业和 R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28686893/
我尝试将我的程序与集群一起使用。现在,我创建一些小作业,并使用 bash 脚本将其提交到特定节点。这些作业将一个大文件复制到节点,对该文件执行 5 个其他程序,最后作业将文件复制回来并在节点上删除它。
我正在编写要在 sge 集群中通过 qsub 运行的脚本。 我有几个需要在脚本中调用的可执行文件,它们都位于同一位置(与脚本本身相同)。所以我想知道如何获取正在执行的脚本的位置。我有一个自动构建系统,
我正在我们的 beowulf 集群上运行 SGE (6.2u5p2)。我有几个用户提交了数十个或数千个低优先级的短期(<15 分钟)作业(即,他们将作业设置为低优先级,以便任何人都可以跳到它们之前)。
首先,“环境”这个词有不同的含义,所以让我澄清一下我的意思。 我正在 Linux 上开发 Python 流程,并且有某些库、软件元素和文件等(例如 yaml)是运行此流程和识别自定义命令所必需的。当我
我在简化一系列 SGE 网格作业时遇到了难题,这些作业之间有一定的依赖性,但还没有找到指定 -hold_jid 的正确方法。 假设我们有这样的工作: job1: qsub -N job1 ... jo
我想更改正在运行的 SGE 实例上的槽数。该实例由 StarCluster 启动。 我试着按照这个 page并运行: ubuntu@master: $ qconf -mattr exechost co
我目前编写了一个 R 脚本来执行种群遗传模拟,然后将包含我的结果的表格写入文本文件。我想以某种方式使用数组作业并行运行此脚本的多个实例(我大学的集群使用 SGE),当它全部完成后,我将生成对应于每个作
我知道,可以通过 qmod -sj [jobid] 命令暂停正在运行的作业,原则上是可行的。这意味着作业进入暂停状态——到目前为止还不错,但是: 我希望如果我将所有正在运行的作业置于暂停状态并将新的作
最近,我可以在集群上运行我的代码。我的代码是完全可并行化的,但我不知道如何最好地利用它的并行特性。我必须计算一个大矩阵的元素,它们中的每一个都独立于其他矩阵。我想提交作业以在多台机器(如 100 台)
在 SGE 中提交作业时如何请求节点数(不是 procs)? 例如在 TORQUE 中,我们可以指定 qsub -l nodes=3 如何在 SGE 中按名称请求节点? 例如在 TORQUE 中,我们
如何从 SGE 获取(最近)失败的作业列表(failed=100 或 exit_status=137)?来自 qacct 帮助: [-j [job_id|job_name|pattern]] l
如何从 SGE 获取(最近)失败的作业列表(failed=100 或 exit_status=137)?来自 qacct 帮助: [-j [job_id|job_name|pattern]] l
我有一个用 python 编写的管道调用 Java 中的一些进程。管道以两种可能的模式运行,在本地模式(在单个节点上)或在 SGE 集群上。 当我将选项设置为集群模式时,日志中的错误消息是这样的 In
我想通过 sge 文件提交 sge 作业。 例如,我有如下run.sge文件: ## SGE options #$ -cwd #$ -l mem_free=2G ##$ -q all.q@comput
我使用的是sun grid engine 6.2u5版本。要求是当我在完成作业时使用 qsub 命令提交作业时我想运行一些脚本(bash 脚本)。 我如何使用 -notify 选项或任何其他方式来跟踪
我想向我正在使用的集群网络提交一个多线程作业 -但是关于 qsub 的手册页并不清楚这是如何完成的——默认情况下,我猜它只是将它作为一个正常的作业发送,而不管多线程——但这可能会导致问题,即将许多多线
这可能是个很简单的问题,但是如果我有job ID,我如何获取通过SGE提交的job的状态呢?我基本上想检查作业 ID,看看它是处于错误状态、仍在运行还是已完成。 我在想这样的事情 qstat -u '
我正在尝试运行在群集(SGE)中使用sqlite3的脚本。 该脚本使用lockfile创建一个锁,填充数据库并释放该锁。 $cat test.sh #!/bin/sh lockfile /
我正在处理 SGE 集群,但在使用 qsub 电子邮件通知系统时遇到了一些问题。我的所有工作都运行良好,但我似乎无法修改默认行为以仅在中止工作时通知。 -M 标志工作正常,当作业中止时我会收到一封电子
我有一个问题希望你帮我解决。 我正在使用 Python 工作,我想要执行以下操作: 在服务器上调用 SGE 批处理脚本 看看它是否正常工作 做某事 我现在所做的大约如下: import sub
我是一名优秀的程序员,十分优秀!