From 0f07af91d1c011d91754d27b8da26a0538ebda84 Mon Sep 17 00:00:00 2001 From: ucbtrm5 Date: Wed, 1 Apr 2026 10:44:27 +0100 Subject: [PATCH] Fix HiTE arguments for v3.3.3 and adjusted hite resources on Myriad HPC config --- modules/local/hite.nf | 9 +++++---- ucl_myriad.config | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 4 deletions(-) create mode 100644 ucl_myriad.config diff --git a/modules/local/hite.nf b/modules/local/hite.nf index ba9f35f..30c92c5 100644 --- a/modules/local/hite.nf +++ b/modules/local/hite.nf @@ -2,7 +2,7 @@ process HITE { label 'process_single' label 'process_long' tag "$species" - container = 'kanghu/hite:3.2.0' + container = 'kanghu/hite:3.3.3' stageInMode = 'copy' input: @@ -34,14 +34,15 @@ process HITE { cd /HiTE - python main.py --genome \${newpath} --outdir \${mydir}/${species}_hite_results --thread ${task.cpus} + python main.py --work_dir \${mydir} --genome \${newpath} --out_dir \${mydir}/${species}_hite_results --thread ${task.cpus} --annotate 1 --plant 0 cd \${mydir}/${species}_hite_results/ - cat <<-END_VERSIONS > versions.yml + cat <<-END_VERSIONS > \${mydir}/versions.yml + "${task.process}": Python version: \$(python --version | cut -f 2 -d " ") - HiTE version: 3.2.0 + HiTE version: 3.3.3 Repeat Masker version: \$(RepeatMasker | grep version | cut -f 3 -d " ") Repeat Modeler version: \$(RepeatModeler | grep /opt/conda/envs/HiTE/share/RepeatModeler/RepeatModeler | cut -f 3 -d " ") LTRPipeline version: \$(LTRPipeline -version) diff --git a/ucl_myriad.config b/ucl_myriad.config new file mode 100644 index 0000000..4208bb3 --- /dev/null +++ b/ucl_myriad.config @@ -0,0 +1,37 @@ +params { + config_profile_description = 'University College London Myriad cluster' + config_profile_contact = 'Chris Wyatt (ucbtcdr@ucl.ac.uk), Fernando Duarte (f.frutos@ucl.ac.uk)' + config_profile_url = 'https://www.rc.ucl.ac.uk/docs/Clusters/Myriad/' +} + +executor { + name = 'sge' + queueSize = 100 // Limit number of jobs sent to qsub (max is 1000, but in case user submits more than one job) + submitRateLimit = '10/1s' // Submit max 10 jobs per second. To ease pressure on scheduler. +} + +process { + penv = 'smp' + clusterOptions = { + def mem = task.memory.mega + def cpus = task.cpus + def memoryPerCpu = mem / task.cpus // We need memory per cpu, as is not possible to request memory per job + def baseOpts = "-S /bin/bash -l mem=${memoryPerCpu}M " + return baseOpts + } + scratch = false +} + +singularity { + enabled = true + autoMounts = true + cacheDir = "${System.getenv('HOME')}/Scratch/.apptainer/pull" + runOptions = "-B ${System.getenv('HOME')},${System.getenv('PWD')} --no-mount /scratch --writable-tmpfs" +} + +process { + withName: HITE { + memory = '64.GB' + cpus = 12 + } +}