![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
searching tool for ChIP-seq analysis of histone modification analysis | tujchl | Epigenetics | 5 | 03-13-2013 10:00 AM |
Variation analysis - tool recommendation | moty | Bioinformatics | 5 | 11-28-2011 06:52 AM |
Performance bottlenecks in sequence analysis pipelines | DanielChubb | Bioinformatics | 1 | 11-04-2011 08:34 AM |
Softwares/Pipelines for ChIP Seq Analysis | ayushraman | Bioinformatics | 0 | 09-16-2011 05:37 PM |
![]() |
|
Thread Tools |
![]() |
#1 |
Junior Member
Location: Melbourne, Australia Join Date: Mar 2012
Posts: 7
|
![]()
Hello all,
I would like to let everyone know about Bpipe, a new tool we have created to help run bioinformatics pipelines. Many people will be familiar with tools like Galaxy and Taverna, etc. that help you run pipelines and give a graphical view of the pipeline, inputs, outputs and many other features to make analysis pipelines more robust and manageable. Bpipe is similar in many ways but aimed at users who are command line oriented. It lets you write your pipelines almost like how you write a shell script, but it automatically adds features such as:
Bpipe is very young and I hope to make many improvements, so I would love to have feedback from anybody here about it. Thanks! Simon |
![]() |
![]() |
![]() |
#2 |
Super Moderator
Location: US Join Date: Nov 2009
Posts: 437
|
![]()
I think this is a great tool for building pipelines. Thanks for sharing. I think it would be awesome if we could eventually adopt a similar approach to be analysis framework, where if tools are written as plugins, a BAM file could open ed once and then operated on with several plugins, and written once.
So much time is wasted on writing a BAM file over and over. |
![]() |
![]() |
![]() |
#3 |
Peter (Biopython etc)
Location: Dundee, Scotland, UK Join Date: Jul 2009
Posts: 1,543
|
![]() |
![]() |
![]() |
![]() |
#4 |
Member
Location: salt lake city, UT Join Date: Apr 2010
Posts: 72
|
![]()
Looks pretty useful, could you explain more about:
http://code.google.com/p/bpipe/wiki/...pelineTutorial where, for example you have: Code:
@Transform("bai") index = { exec "samtools index $input" return input } from the previous? what if a given step needs multiple previous $output' s? I guess it's not clear to me what's going on with the the $input and $output names. |
![]() |
![]() |
![]() |
#5 | |
Super Moderator
Location: US Join Date: Nov 2009
Posts: 437
|
![]() Quote:
If so, then this would negate the need for plug-ins. |
|
![]() |
![]() |
![]() |
#6 |
Member
Location: salt lake city, UT Join Date: Apr 2010
Posts: 72
|
![]() |
![]() |
![]() |
![]() |
#7 |
Super Moderator
Location: US Join Date: Nov 2009
Posts: 437
|
![]()
Yes I agree. I guess I was wondering if there was a rationale for a more complex plugin framework. Seems like for the most part there is not one.
|
![]() |
![]() |
![]() |
#8 | |
Junior Member
Location: Melbourne, Australia Join Date: Mar 2012
Posts: 7
|
![]()
Hi maubp,
Quote:
Named pipes is a really interesting idea. I think at the moment it would be problematic because Bpipe expects the process for a pipeline stage to terminate before it will initiate the next stage. But with some tweaks that could be relaxed, to allow this mode of operation. I'll definitely put more thought into this - thanks for the discussion / ideas! |
|
![]() |
![]() |
![]() |
#9 | ||
Junior Member
Location: Melbourne, Australia Join Date: Mar 2012
Posts: 7
|
![]()
Hi brentp,
Quote:
Quote:
Code:
exec "somecommand $input.vcf $input.bam" Code:
exec "somecommand most_recent_vcf.vcf most_recent_bam.bam" Code:
exec "somecommand $inputs.bam" Code:
exec "somecommand file1.bam file2.bam file3.bam ..." Code:
exec "for i in $inputs.bam; do samtools index $i; done" Cheers, Simon |
||
![]() |
![]() |
![]() |
#10 |
Junior Member
Location: La Jolla Join Date: Apr 2011
Posts: 5
|
![]()
Hi Simon,
I am trying to do some parallelization with bpipe and hope you can help me out on a problem. Like in this example from the Wiki Code:
Bpipe.run { chr(1..5) * [ hello ] } Code:
@Transform("sam") align_stampy = { exec """ python $STAMPY_HOME/stampy.py --bwaoptions="-q10 $REFERENCE" -g $STAMPY_GENOME_INDEX -h $STAMPY_HASH_FILE -M $input1,$input2 -o $output --readgroup=ID:$rg_id,LB:$rg_lb,PL:$rg_pl,PU:$rg_pu,SM:$rg_sm --processpart=$part """ } Bpipe.run { part("1/3", "2/3", "3/3") * [align_stampy] } Thanks, Tobias |
![]() |
![]() |
![]() |
#11 | |
Junior Member
Location: Melbourne, Australia Join Date: Mar 2012
Posts: 7
|
![]()
Hi Tobias,
Quote:
http://code.google.com/p/bpipe/issue...&ts=1334929751 Thanks for the feedback! Simon |
|
![]() |
![]() |
![]() |
#12 |
Junior Member
Location: La Jolla Join Date: Apr 2011
Posts: 5
|
![]()
Hi Simon,
thx for adding this issue to you develpment queue. I will you on this.. Tobias |
![]() |
![]() |
![]() |
#13 |
Member
Location: Houston, Texas Join Date: Jul 2011
Posts: 44
|
![]()
I do a lot of shell scripts and make files, and this Bpipe looks like it will make my life much easier.
I have a problem using the torque queue. The process does not return after successfully executing one statement. For example, if I give it... Code:
echo = { exec "echo this" exec "echo that" } Bpipe.run { echo } This only happens when using torque. Incidentally, in order to get the queue to run had to export the QUEUE shell variable set to the name of the pbs queue. Any ideas about how to get it to work? Edit: I figured out how to get it to work. I configured the queue to keep complete jobs for a minute. It had been removing jobs from the queue immediately after completion, so the job status would never be shown as "completed". Now it's fixed. Last edited by Alex Renwick; 04-20-2012 at 08:58 AM. |
![]() |
![]() |
![]() |
#14 |
Senior Member
Location: Germany Join Date: Oct 2008
Posts: 415
|
![]()
Nice job Simon, we like this tool very much. The wiki is great.
|
![]() |
![]() |
![]() |
Thread Tools | |
|
|