Mercurial > repos > jdv > nanopolish
changeset 8:b437c0a7ca04 draft
planemo upload for repository https://github.com/jvolkening/galaxy-tools/tree/master/tools/nanopolish commit 419298c744d71488d78e1dadb868a4d8b933618e
author | jdv |
---|---|
date | Mon, 12 Feb 2018 03:06:42 -0500 |
parents | 32cb27adeb34 |
children | f1141f6a2d65 |
files | nanopolish_variants.pl |
diffstat | 1 files changed, 13 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/nanopolish_variants.pl Mon Feb 12 00:58:10 2018 -0500 +++ b/nanopolish_variants.pl Mon Feb 12 03:06:42 2018 -0500 @@ -7,6 +7,7 @@ use Cwd qw/getcwd abs_path/; use File::Copy qw/copy/; use Getopt::Long qw/:config pass_through/; +use List::Util qw/min/; use threads; use threads::shared; use BioX::Seq::Stream; @@ -38,6 +39,14 @@ my $tmp_dir = 'tmp_dir'; mkdir $tmp_dir; +# divide available threads between actual threads and regions +# +# testing suggests minimal speed-up past 4-8 actual threads per region, so use +# remaining threads for running parallel regions +my $n_threads = min( 4, $threads ); +my $n_workers = int($threads/$n_threads); + + $fn_fast5 = abs_path($fn_fast5); # extract FAST5 files to path where they are expected @@ -82,8 +91,9 @@ my @cmd = @ARGV; unshift @cmd, 'nanopolish'; -push @cmd, '--genome', $fn_genome; -push @cmd, '--reads', $fn_link; +push @cmd, '--genome', $fn_genome; +push @cmd, '--reads', $fn_link; +push @cmd, '--threads', $n_threads; my @regions :shared; @@ -96,7 +106,7 @@ } my @workers; -for (1..$threads) { +for (1..$n_workers) { push @workers, threads->create(\&run); }