Hi Edgardo,
I'm trying to run Captus on a supercomputer and have run into some odd behaviour during step 3 (extraction). Despite providing 128 cores and 230GB of RAM, the step immediately fails due to an OOM error. When I run with --debug this doesn't happen, so it seems to relate to the parallelisation(?). I have 76 assemblies using skimming data (assembled with Captus), and I get the error when running 32 concurrent and 16 concurrent (c. 7 and 14 GB RAM per extraction).
Here's a portion of the log file:
Captus version: v1.4.1
Command: /opt/conda/envs/captus_env/bin/captus extract --captus_assemblies_dir 02_assemblies --out ./03_extractions/ --nuc_refs /scratch/pawsey0220/anderson/Adenanthos/captus/HERB_targets_ref_prot.fasta --nuc_min_score 0.2 --nuc_min_identity 80 --nuc_min_coverage 20 --ram 235 --threads 128 --concurrent 16
OS: Linux-5.14.21-150500.55.83_13.0.62-cray_shasta_c-x86_64-with-glibc2.36
Host: nid002821
Max. RAM: 235.0GB (out of 250.3GB)
Max. Threads: 128 (out of 256)
Dependencies:
Scipio : v1.4.1 OK
├─BioPerl: v1.7.8 OK
└─YAML : v1.30 OK
BLAT : v37x1 OK
MMseqs2 : not used
MAFFT : not used
Python libraries:
numpy: v2.2.5 OK
pandas: v2.2.3 OK
plotly: v6.0.1 OK
Captus assemblies dir: /scratch/pawsey0220/anderson/Adenanthos/captus/02_assemblies
VALID Captus assemblies directory with 76 samples and 76 'assembly.fasta' files
Total assemblies found: 76
Output directory: /scratch/pawsey0220/anderson/Adenanthos/captus/03_extractions
Output directory successfully created
Protein and DNA Markers Extraction from FASTA assemblies (2025-05-13 16:39:48)
Now Captus will search within your FASTA assemblies for the set of
reference proteins provided by '--nuc_refs', '--ptd_refs', and/or '--mit_refs'
and extract the sequences both in nucleotide and translated to aminoacid using
the specified '--nuc_transtable', '--ptd_transtable' and '--mit_transtable'
respectively.
Additionally, miscellaneous DNA references provided with '--dna_refs' will
also be extracted.
Verifying protein reference sets...
PROTEIN OPTIONS:
Max. loci for Scipio x2: 2000
Predict dubious introns: False
Concurrent extractions: 16
RAM per extraction: 14.7GB
Threads per extraction: 8
Nuclear proteins:
reference: /scratch/pawsey0220/anderson/Adenanthos/captus/HERB_targets_ref_prot.faa
reference info: 284 loci, 284 sequences (loci names found, detected a single sequence per locus)
translation table: 1
min_score: 0.2
min_identity: 80.0
min_coverage: 20.0
depth_tolerance: 2.0 (min = 10^(log(depth of the contig with best hit in locus) / 2.0))
Plastidial proteins:
reference: not used
Mitochondrial proteins:
reference: not used
MISCELLANEOUS DNA OPTIONS:
reference: not used
OUTPUT OPTIONS:
Ignore depth of coverage: False
Disable contig stitching: False
Max. paralogs: -1 (Keep all paralogs)
Paralog tolerance: 5
Max. separate loci files: 0 (Do not write separate loci files per sample)
Overwrite files: False
Keep all files: False
Samples to process: 76
Extractions to process: 76 protein and 0 nucleotide
Nuclear proteins: /scratch/pawsey0220/anderson/Adenanthos/captus/03_extractions/[Sample_name]__captus-ext/01_coding_NUC
Annotated assemblies: /scratch/pawsey0220/anderson/Adenanthos/captus/03_extractions/[Sample_name]__captus-ext/06_assembly_annotated
(These output directories will be created for each sample)
Paths to references used: /scratch/pawsey0220/anderson/Adenanthos/captus/03_extractions/captus-extract_refs.json
Extracting protein-coding markers with Scipio:
0%| | 0/76 [00:00<?, ?extraction/s]slurmstepd: error: Detected 1 oom_kill event in StepId=24882035.0. Some of the step tasks have been OOM Killed.
srun: error: nid002821: task 0: Out Of Memory
srun: Terminating StepId=24882035.0
Any ideas? Is it possible the Scipio step is requesting more memory than available?
Cheers,
Ben
Hi Edgardo,
I'm trying to run Captus on a supercomputer and have run into some odd behaviour during step 3 (extraction). Despite providing 128 cores and 230GB of RAM, the step immediately fails due to an OOM error. When I run with
--debugthis doesn't happen, so it seems to relate to the parallelisation(?). I have 76 assemblies using skimming data (assembled with Captus), and I get the error when running 32 concurrent and 16 concurrent (c. 7 and 14 GB RAM per extraction).Here's a portion of the log file:
Any ideas? Is it possible the Scipio step is requesting more memory than available?
Cheers,
Ben