In-Memory Data Comparison for Low-Movement Sequence Alignment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current genomic sequence analysis methods face performance bottlenecks due to significant data movement between flash memory and DRAM during sequence alignment, which is inefficient and hinders high-throughput sequencing.
Innovation Solution
Implement a pre-seeding operation in storage units to identify candidate matching and mismatching input data, followed by in-memory search (IMS) units to compare with reference data, reducing the need for external data transfers and enhancing performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If data are pre-sorted and loaded into DRAM for sequence alignment, then comparison accuracy is improved, but data movement between flash memory and DRAM increases significantly
Solution Approach 1:
The patent applies preliminary action by performing pre-seeding operations directly in flash memory storage units before the main comparison process. Candidate matching input data are identified and marked in advance within the storage units, so that only these pre-selected candidates need to be transferred to DRAM for final verification. This reduces the volume of data movement while maintaining comparison accuracy.
Solution Approach 2:
The patent introduces an intermediary mechanism through the use of storage units with integrated comparison functionality between flash memory and DRAM. These storage units act as intermediaries that can perform preliminary comparisons and identify candidate matches without requiring all data to be fully loaded into DRAM, thereby reducing data movement energy while preserving accuracy.
2Reliability
If all input data are transferred to DRAM for comparison, then comparison completeness is improved, but data movement volume increases
Solution Approach 1:
The patent applies segmentation by dividing the comparison process into two stages: a first stage performed in flash memory storage units that identifies candidate matching input data, and a second stage in DRAM that verifies these candidates. This segmentation allows the system to maintain comparison completeness by verifying all candidates while reducing data movement volume by only transferring candidates rather than all input data.
Solution Approach 2:
The patent uses preliminary action by performing the pre-seeding operation in flash memory to identify candidate matching input data before transferring to DRAM. This preliminary filtering ensures that only data requiring verification are moved, maintaining completeness of comparison while minimizing data movement volume.
3Speed
If conventional alignment method is used with sorted data, then comparison speed is improved for matched data, but data movement bottleneck persists
Solution Approach 1:
The patent applies preliminary action by performing pre-seeding operations in flash memory to identify candidate matching input data before the main comparison process. This preliminary filtering accelerates the overall process by reducing the number of data items that need to be transferred and processed in DRAM, thereby improving both comparison speed and overall processing throughput.
Solution Approach 2:
The patent introduces storage units as intermediaries that perform preliminary comparisons and identify candidate matches. These intermediaries accelerate processing by filtering data before the main comparison stage, improving both comparison speed and overall throughput by reducing the burden on the DRAM subsystem.
Data Source
AI summary
The application provides a data comparison method, a memory device, and a memory controller. A pre-seeding operation is performed on input data to pre-screen a plurality of candidate matching input data and a plurality of first mismatching input data. A group test is performed on the candidate matching input data to compare the candidate matching input data with a plurality of reference data to generate a matching result, thereby distinguishing a plurality of matching input data and a second mismatching input data from the candidate matching input data, wherein the matching result indicates information about the matching input data which matches the reference data, while the second mismatching input data does not match the reference data.


