0

slurm バージョン 14.03.0 を使用して、HPC で 168 個のシーケンス ファイルを整列させようとしています。他の人のためにいくつかのノードを開いたままにしておくために、一度に最大 9 つの計算ノードを使用することしか許可されていません。

ファイル名を変更して、配列関数を sbatch で使用できるようにしました。シーケンス ファイルは次のようになります: Sequence1.fastq.gz、Sequence2.fastq.gz、… Sequence168.fastq.gz

一度に 9 個の 168 個のファイルすべてを実行するように指示する方法がわかりません。168 個のファイルすべてを実行するようにできますが、使用可能なすべてのノードを使用するため、数日間実行されるため、問題が発生します。

「--array=1-168%9」を使用して一度に実行する数を指定できる場所を見つけましたが、これはクラスターにあるよりも新しいバージョンの slurm で実装されました。この機能を取得する別の方法はありますか? 私は物事を試し、数週間髪を抜いてきました.

私が実行しようとしている方法は次のとおりです。

#!/bin/bash
#SBATCH --job-name=McSeqs
#SBATCH --nodes=1
#SBATCH --array=1-168
srun alignmentProgramHere Sequence${SLURM_ARRAY_TASK_ID}.fastq.gz -o outputdirectory/

ありがとう!マット

4

1 に答える 1

0

それで、私はそれを機能させる方法を考え出しました。秘訣は、sbatch オプションがすべて各配列インスタンスに渡されることです。--exclude オプションを使用して、各アレイ インスタンスに計算ノードの半分を使用しないように指示しました。そのため、私は一度に 9 つのファイルを実行し、計算ノードを他の人のために開いたままにしています。

#!/bin/bash
#SBATCH --job-name=McSeqs
#SBATCH --nodes=1
#SBATCH --array=1-168
#SBATCH --exclude=cluster[10-20]

srun alignmentProgramHere Sequence${SLURM_ARRAY_TASK_ID}.fastq.gz -o outputdirectory/
于 2015-02-11T14:55:54.097 に答える