PacificBiosciences / FALCON_unzip

Making diploid assembly becomes common practice for genomic study
BSD 3-Clause Clear License
30 stars 18 forks source link

speed up blasr #123

Closed olechnwin closed 6 years ago

olechnwin commented 6 years ago

Hi All,

Falcon-unzip has been running this job (blasr) that was finally cancelled due to time limit. I am running falcon-unzip to assemble human genome. Below is the stderr:

+ mkdir -p blasr
time blasr /gpfs0/home/gdlessnicklab/cxt050/Data/A673_pacbio/sequel_fasta/3-unzip/reads/002757F/reads.fa /gpfs0/home/gdlessnicklab/cxt050/Data/A673_pacbio/sequel_fasta/3-unzip/reads/002757F/ref.fa --noSplitSubreads --clipping subread --hitPolicy randombest --randomSeed 42 --bestn 1 --minPctIdentity 70.0 --minMatch 12  --nproc 24 --bam --out tmp_aln.bam
+ blasr /gpfs0/home/gdlessnicklab/cxt050/Data/A673_pacbio/sequel_fasta/3-unzip/reads/002757F/reads.fa /gpfs0/home/gdlessnicklab/cxt050/Data/A673_pacbio/sequel_fasta/3-unzip/reads/002757F/ref.fa --noSplitSubreads --clipping subread --hitPolicy randombest --randomSeed 42 --bestn 1 --minPctIdentity 70.0 --minMatch 12 --nproc 24 --bam --out tmp_aln.bam
[INFO] 2018-06-02T20:31:17 [blasr] started.
Warning: When attempting to select equivalently scoring reads at random
the bestn parameter should be greater than one.
slurmstepd: error: *** JOB 1066319 ON node28 CANCELLED AT 2018-06-09T20:31:32 DUE TO TIME LIMIT ***
slurmstepd: error: Exceeded step memory limit at some point.
slurmstepd: error: Exceeded job memory limit at some point.

This is my config file:

[General]
job_type = slurm
job_queue = general

[Unzip]
input_fofn= input.fofn
input_bam_fofn= input_bam.fofn

smrt_bin=/gpfs0/home/gdlessnicklab/cxt050/local/smrtlink_qmaster/smrtcmds/bin

jobqueue = general
sge_phasing= --ntasks 1 --nodes 1 --cpus-per-task 12 -p %(jobqueue)s
sge_quiver= --ntasks 1 --nodes 1 --cpus-per-task 12 -p %(jobqueue)s
sge_track_reads= --ntasks 1 --nodes 1 --cpus-per-task 12 -p %(jobqueue)s
sge_blasr_aln= --ntasks 1 --nodes 1 --cpus-per-task 15 -p %(jobqueue)s
sge_hasm= --ntasks 1 --nodes 1 --cpus-per-task 15 -p %(jobqueue)s
unzip_concurrent_jobs = 40
quiver_concurrent_jobs = 40
unzip_blasr_concurrent_jobs = 50
unzip_phasing_concurrent_jobs = 50

My questions:

  1. How do I speed up the blasr job.
  2. Which setting in the configuration file was for running blasr? Is it sge_blasr_aln?
  3. How much memory do I need to run blasr on human genome?
  4. When I run falcon-unzip, only 1 blasr job is ran at a time. This is the last entry of the all.log file which shows the number of queue 1 when the max_jobs=50. I don't get why it only queues 1 job when the max_job is 50.
2018-06-11 13:44:51,029 - pypeflow.simple_pwatcher_bridge - DEBUG - N in queue: 1 (max_jobs=50)
2018-06-11 13:44:51,032 - pwatcher.fs_based - DEBUG - query(which='list', jobids=<1>)
2018-06-11 13:44:51,032 - pwatcher.fs_based - DEBUG - Status RUNNING for heartbeat:heartbeat-Paad25bbde424de
2018-06-11 13:44:51,032 - pypeflow.simple_pwatcher_bridge - INFO - sleep 10s

Thank you in advance for your help!

pb-cdunn commented 6 years ago

Yeah, blasr is slow. We've switched to minimap2, at least for some steps.

https://github.com/PacificBiosciences/FALCON_unzip/wiki/Binaries

To get any help, you really need to tell us what versions of software you are using and how you obtained them. (The GitHub code is not up-to-date. You should see some warnings telling you to use job.defaults instead of General for the job settings. https://github.com/PacificBiosciences/FALCON-integrate/wiki/Configuring-Unzip )

olechnwin commented 6 years ago

@pb-cdunn thanks for your reply In my falcon/output.txt there is UNZIP_TARBALL=falcon-2018.03.12-04.00-py2.7-ucs4.tar.gz I think this is the falcon version I used. The blasr version blasr --version blasr 5.3.0.ef9a989-dirty Installation was done following https://pb-falcon.readthedocs.io/en/latest/quick_start.html

What would be very helpful is to know which documentation I should use that correspond to the programs I'm using.

bruc commented 6 years ago

@pb-cdunn You wrote above "The GitHub code is not up-to-date". Is it possible to get the current source code that corresponds to the binaries that you provide?

Thanks!

pb-cdunn commented 6 years ago

Falcon-unzip has been running this job (blasr) that was finally cancelled due to time limit.

But your error message indicates the Slurm canceled the job because of memory limits. To change the memory limits, please switch to a blocking "process-watcher", where you provide the command-line used to call Slurm. (The way have been generating the job-submission calls automatically is very difficult to maintain for users on many systems.)

Is it possible to get the current source code that corresponds to the binaries that you provide?

Unfortunately, we cannot provide the source code publicly. You could try contacting your PacBio contact for your Sequel machine.