hpc - sbatch --array 定义基于由 --dependency 生成的工件?
问题描述
问题:
我有以下runner.sh
。
问题是sbatch
对数组作业的调用是根据其依赖项的输出SPLATGEN
定义的。--array=1-$CSVLENGTH
问题:
如何让 runner.sh 等到$CSVLENGTH
可用后再尝试SPLATGEN=$...
?
背景:
这似乎失败了,因为 slurm 想$CSVLENGTH
提前知道......
一般来说,我会知道 的值,$CSVLENGTH
但它会根据sensitivity_pipeline_01_csv.sub
.
#!/bin/bash
# runner.sh starts all the batches and manages dependencies
ARRAYDIR=/dfs5/bio/mkarikom/code/DTMwork/slurm/jobarrays
SIMDIR=/dfs5/bio/mkarikom/code/DTMwork/slurm/splatter_sim
echo file locations updated...
CSVGEN=$(sbatch /dfs5/bio/mkarikom/code/DTMwork/slurm/sensitivity_pipeline_01_csv.sub | cut -f 4 -d' ')
echo $CSVGEN
source $ARRAYDIR/splatsim_arraylength.txt # get $CSVLENGTH
SPLATGEN=$(sbatch --dependency=afterany:$CSVGEN --array=1-$CSVLENGTH /dfs5/bio/mkarikom/code/DTMwork/slurm/sensitivity_pipeline_02_splatter.sub | cut -f 4 -d' ')
echo $SPLATGEN
解决方案
推荐阅读
- python - configurepython argparse 帮助文件
- flutter - Flutter Agora agora_rtc_engine 如何显示当前正在频道中讲话的用户的图像?
- c++ - #define 中的不断计算会消耗资源吗?
- c++ - C++ 中向量字符串构造函数创建的对象的大小和类型
- r - geom_line 不输出连接点
- firebase - 如何在颤动中通知用户关于报价调用?
- c - 当函数放置在具有属性的 SRAM 中时代码暂停
- python - 'os'路径的解决方案是什么
- ffmpeg - 基于 Electron 框架 (libffmpeg) 发布应用程序的法律问题
- c# - 如何使用 LINQ 针对 Azure Cosmos Document DB SQL API 有效地进行动态查询?