0

我试图在一个样本上运行 MuTect2,在我使用 java 的机器上运行大约需要 27 分钟。

如果我使用几乎相同的代码,但在 Nextflow 内部并使用 GATK3:3.6 docker 容器来运行 Mutect,则需要多花 7 分钟,这似乎没有明显的原因。

在 Ubuntu 18.04 上运行,肿瘤和正常样本来自 Oncomine 面板。肿瘤是4.1G,正常是1.1G。我认为时间可能会花在将数据复制到容器上,但 7-8 分钟似乎太长了。也可能是复制参考文件吗?

bai_ch是引入肿瘤和正常索引文件的通道

process MuTect2 {
  label 'mutect'

  stageInMode 'copy'
  publishDir './output', mode : 'copy', overwrite : true

  input:
  file tumor_bam_mu from tumor_mu
  file normal_bam_mu from normal_mu
  file "*" from bai_ch
  file mutect2_ref
  file ref_index from ref_fasta_i_m
  file ref_dict from Channel.fromPath(params.ref_fast_dict)
  file regions_file from Channel.fromPath(params.regions)
  file cosmic_vcf from Channel.fromPath(params.cosmic_vcf)
  file dbsnp_vcf from Channel.fromPath(params.dbsnp_vcf)
  file normal_vcf from Channel.fromPath(params.normal_vcf)

  output:
  file '*' into mutect_ch

  script:
  """
  ls
  echo MuTect2 task path: \$PWD
  java -jar /usr/GenomeAnalysisTK.jar \
    --analysis_type MuTect2 \
    --reference_sequence hg19.fa \
    -L designed.bed \
    --normal_panel normal_panel.vcf \
    --cosmic Cosmic.vcf \
    --dbsnp dbsnp.vcf \
    --input_file:tumor $tumor_bam_mu \
    -o mutect2.somatic.unfiltered.vcf \
    --input_file:normal $normal_bam_mu \
    --max_alt_allele_in_normal_fraction 0.1 \
    --minPruning 10 \
    --kmerSize 60
  """

}

我唯一的想法是创建自己的 docker 以方便使用参考文件,这可能会节省复制它们的时间?我希望 nextflow+container 版本的运行速度仅比 CLI 版本稍慢。

4

1 回答 1

1

检查任务工作目录中的任务 Bash 包装器以评估性能问题。

于 2019-07-29T07:46:42.843 回答