BWA-MEM Seeding Memory Allocation for Faster Short-Read Alignment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional gene sequencing systems face challenges in performance and storage resource utilization, particularly in the seeding sub-stage of the Burrows Wheeler Alignment (BWA-MEM) due to unpredictable and time-consuming memory access patterns during the seeding sub-stage, which makes the system memory-bound and inefficient.
Innovation Solution
The technique involves storing frequently accessed occurrence table entries in a faster memory type, reducing the need for random and sequential memory accesses by using a hardware device with two types of memory, where the frequently accessed entries are stored in a type with faster access time, while less frequently accessed entries are stored in slower memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If all occurrence table entries are stored in fast memory, then memory access time is reduced, but memory cost and device complexity increase
Solution Approach 1:
The occurrence table is segmented into multiple parts based on access frequency. The first part containing frequently accessed entries is stored in fast memory (first type), while the second part with less frequently accessed entries is stored in slow memory (second type). This segmentation resolves the contradiction by providing fast access for critical operations while avoiding the cost and complexity of storing the entire table in fast memory.
Solution Approach 2:
Different parts of the occurrence table are assigned different storage locations based on their access characteristics. The first part is placed in fast memory to optimize for speed, while the second part is placed in slow memory to optimize for cost. This local quality differentiation resolves the contradiction by optimizing memory access time for frequently accessed entries without requiring all entries to be in fast memory.
2Productivity
If a larger portion of the occurrence table is stored in fast memory, then alignment performance improves, but memory cost increases
Solution Approach 1:
Instead of storing the entire occurrence table in fast memory, only the necessary first part with frequently accessed entries is stored there. The second part is stored in slow memory. This partial action approach achieves sufficient alignment performance by ensuring fast access to the most critical data while avoiding the excessive cost of storing all data in fast memory.
3Adaptability or versatility
If random memory access patterns are used during seeding, then alignment flexibility is maintained, but memory access time increases
Solution Approach 1:
The occurrence table is pre-organized into two parts based on access frequency analysis. The first part with frequently accessed entries is placed in fast memory before the alignment process begins. This preliminary organization ensures that during the seeding process, even with random access patterns, the most frequently accessed entries are readily available in fast memory, reducing overall memory access time while maintaining alignment flexibility.
Data Source
AI summary
In accordance with embodiments, a processing unit receives a count table and an occurrence table for a reference sequence generated using a Burrows Wheeler Transform (BWT) algorithm. The reference sequence comprises a sequence of base pairs (bps). The processing unit stores a first part of the occurrence table in a first type of memory. The size of the first part of the occurrence table is determined based on a size of the first type of memory and a first number of bps of short reads (SRs) to be processed using the first type of memory. The processing unit receives a short read (SR) of a sample sequence. The SR comprises the first number of bps and a second number of bps. The processing unit performs alignment of the short read (SR) against the reference sequence using the count table and the occurrence table.


