Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • nilshomer
    replied
    Excellent clarification. Thank-you.

    Leave a comment:


  • dp05yk
    replied
    I've run pBWA on clusters so far, so shared memory does not exist between nodes, only between cores. Here's an example for what you're looking for:

    I use the Orca cluster on the SHARCNET. Orca has 320 nodes, each node with 24 cores and 32GB of RAM. We can run pBWA as follows:

    sqsub -q mpi -n 320 -N 80 --mpp 8G ./pBWA aln -t 6....

    We specify that we want 320 parallel processes spread across 80 nodes. This means each node will have 4 instances of pBWA running at 8GB/instance. 8GB/instance is overkill, but what it does is ensure that the remaining 20 cores on each node are free for threading. Since we've called aln with -t 6, each of our parallel processes will spawn six more threads for a total of 320*6 threads of execution.

    Now because samse/sampe are not multithreaded, we can only run samse/sampe as follows:

    sqsub -q mpi -n 320 ./pBWA sampe ...

    So we're only able to run samse/sampe with 320 processes and no extra threads, but it is still 319 more processes than you'd be able to run with if you were to use BWA.

    I'm definitely planning on introducing multithreading into samse/sampe, but I'm busy with other things right now (preparing for my defense).

    EDIT: totally forgot to mention, that pBWA requires as much memory per parallel process as BWA does per run. That is why combining multithreading with parallelism is a good fit for lower-RAM clusters.

    Leave a comment:


  • nilshomer
    replied
    So how much RAM is required for each process? I want parallelism and the benefit of shared memory.

    Leave a comment:


  • dp05yk
    replied
    samse/sampe are not multithreaded yet, they are just parallelized (hence 'p'BWA). Aln is parallelized AND multithreaded. Not sure if you knew this - but there is a difference between parallelism and multithreading... multithreaded applications can only run on as many cores exist on one node, and parallel applications (like pBWA) can run on as many nodes or cores as you wish.

    However, parallelism is more efficient than multithreadiing would be (if it were implemented) for samse/sampe if your system has >=4GB RAM/core, because adding multithreading to samse/sampe would require removal of the hash table.

    That being said, I will work multithreading into samse/sampe for future releases - this will make pBWA more attractive as it will be more efficient for systems with less available RAM.

    Leave a comment:


  • nilshomer
    replied
    I think multi-threading samse/sampe is a huge contribution.

    Leave a comment:


  • dp05yk
    replied
    Thanks! I know there have been a few posts lately asking how parallel computing can work with NGS and so I thought I'd post this. There may yet be some kinks in the code and it's not published yet (still shopping for a suitable journal) but if anyone is interested in the methods I'll post a basic workflow behind the algorithm. The sourceforge page goes into a little detail for best use but not too much.

    As for the improvements to multithreading, I noticed that BWA introduces too much thread competition, which isn't a problem for small amounts of threads, but when I was going up to 24 threads I noticed that pBWA was actually faster for 24 parallel processes than BWA was for 24 threads which surprised me. I changed the way BWA handles multithreading by basing it purely on a loop counter's mod value and removed all the sequence locking, etc, and multithreading improved by ~20% for higher amounts of threads.

    Leave a comment:


  • nilshomer
    replied
    Making this sticky, since a lot of users should find this useful and interesting!

    Leave a comment:


  • dp05yk
    started a topic Introducing pBWA [Parallel BWA]

    Introducing pBWA [Parallel BWA]

    EDIT (July 5th, 2011): An alternate version of pBWA is now available that cleans up the workflow a bit. The user is no longer required to enter the number of reads in the FASTQ file, and SAM information is output to one file in parallel by all processors. There are also a few minor stability enhancements that should make pBWA compatible with MPICH. Performance appears to be similar to pBWA-r32. Thanks go to Rob Egan for the enhancements.

    For my master's thesis in computer science, I developed a parallel version of BWA based on the OpenMPI library, called pBWA. pBWA retains and improves upon the multithreading provided by BWA while adding efficient parallelization for its core alignment functions [aln, sampe, samse]. The wall-time speedup of pBWA is bounded only by the size of the parallel system as it can run on any number of nodes and/or cores simultaneously. With suitable computer systems, pBWA can align billions of sequence reads within hours, more efficiently facilitating the analysis of new generations of NGS data.

    Note that the improvements pBWA makes for the multithreading have been shown to Heng Li and will probably be implemented in a future release of BWA.

    I have successfully tested pBWA on a couple systems, namely the SHARCNET (www.sharcnet.ca) and a school server with the most basic OpenMPI install.

    If you have access to a cluster or parallel machine, you may want to give pBWA a try. Due to the nature of parallel computing, the optimal number of nodes/threads used will vary greatly depending on things like RAM and interconnect speeds.

    pBWA can be obtained by visiting
    Download Parallel BWA [pBWA] for free. Parallel implementation of BWA (http://bio-bwa.sourceforge.net/) using the OpenMPI library.


    A manual page is located at


    Thanks for your time!
    Last edited by dp05yk; 07-05-2011, 06:08 AM. Reason: Alternate version now available

Latest Articles

Collapse

  • SEQadmin2
    How Immunogenomics Decodes Immunity’s Genetic Blueprint
    by SEQadmin2




    The immune system’s power comes from its genetic diversity, allowing myriad threats to be neutralized through first recognizing foreign antigens. That diversity is also what makes the immune system so difficult to study. Recent advances in sequencing technology and computational biology, however, are giving researchers new tools to understand immune responses and immune-related diseases in greater detail.

    This convergence of genetics, immunology, and computation...
    09-01-2026, 05:41 AM

ad_right_rmr

Collapse

News

Collapse

Topics Statistics Last Post
Started by SEQadmin2, Yesterday, 11:37 AM
0 responses
11 views
0 reactions
Last Post SEQadmin2  
Started by SEQadmin2, 09-16-2026, 10:23 AM
0 responses
19 views
0 reactions
Last Post SEQadmin2  
Started by SEQadmin2, 09-09-2026, 12:14 PM
0 responses
37 views
0 reactions
Last Post SEQadmin2  
Started by SEQadmin2, 09-09-2026, 11:33 AM
0 responses
33 views
0 reactions
Last Post SEQadmin2  
Working...