IP Library Granted Patent US 12,412,641
Granted Patent B2
US 12,412,641 · App. 17/126,491 · Granted Sep 9, 2025

Merging alignment and sorting to optimize computer operations for gene sequencing pipeline

Inventors: Meysam Roodi (Richmond Hill, CA); Zahra Lak (Toronto, CA)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G16B30/20G16B30/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,412,641
App. No.
17/126,491
Granted
Sep 9, 2025
Kind
B2
Abstract

In accordance with embodiments, a processing unit performs alignment of a short read (SR) against a reference sequence. The reference sequence comprises a first sequence of base pairs (bps). The SR comprises a second sequence of bps. The processing unit determines whether the SR is aligned. If the SR is not aligned, the processing unit receives the next SR and processes the next SR by repeating. If the SR is aligned, in response to the determination that the SR is aligned with the reference sequence at a first position in the reference sequence, the processing unit generates an SR metadata entry corresponding to the SR. The processing unit inserts the SR metadata entry to a linked list in a SR metadata collection. The position of the linked list in the SR metadata collection corresponds to the first position of the reference sequence where the SR is aligned.

Claims (39)

1. A method, the method comprising:

performing, by at least one processing unit, alignment of a short read (SR) against a reference sequence, wherein the reference sequence comprises a first sequence of base pairs (bps), and the SR comprises a second sequence of bps;

in response to determination that the SR is aligned with the reference sequence at a first position in the reference sequence:

generating, by the at least one processing unit, an SR metadata entry corresponding to the SR; and

inserting, by the at least one processing unit, the SR metadata entry to a linked list in a SR metadata collection, wherein the SR metadata collection includes an array of linked lists, an array index of an array element for the linked list in the array of the SR metadata collection corresponding to the first position of the reference sequence where the SR is aligned, wherein the linked list comprises a plurality of SR metadata entries after the inserting, wherein SRs corresponding to the plurality of SR metadata entries in the linked list are all aligned at the first position of the reference sequence, and wherein a size of the array is at least a quantity of bp positions in the reference sequence;

determining, by the at least one processing unit, that alignment of all of a plurality of SRs stored in a fastq file against the reference sequence has been performed, wherein corresponding SR metadata entries of aligned SRs of the plurality of SRs have been automatically sorted by aligned positions of the aligned SRs when each of the corresponding SR metadata entries was inserted to a corresponding linked list of the array, the corresponding linked list indexed at a corresponding array index based on a corresponding alignment position; and

generating, by the at least one processing unit, a binary alignment map (BAM) file based on the array of linked lists in the SR metadata collection, the BAM file being a binary presentation of the aligned SRs sorted by the aligned positions, and the BAM file being an input directly fed into a Mark Duplicates sub-system.

2. The method of claim 1 , wherein the SR metadata entry comprises an identifier (ID) of the SR.

3. The method of claim 2 , further comprising:

before the performing the alignment of the SR, receiving, by the at least one processing unit, the SR from the plurality of SRs stored in the fastq file, wherein the ID of the SR comprises an index of the SR in the plurality of SRs.

4. The method of claim 2 , the SR metadata entry further comprises alignment results generated by the performing the alignment of the SR.

5. The method of claim 4 , wherein the alignment results comprise a concise idiosyncratic gapped alignment report (CIGAR), a Flag, and a mark duplicate (MD) notation.

6. The method of claim 1 , wherein each of the plurality of SRs includes at least 100 bps.

7. A computer device comprising:

at least one processor unit;

a non-transitory computer readable storage medium storing programming for execution by the at least one processor unit, the programming including instructions to cause the computer device to perform operations including:

performing alignment of a short read (SR) against a reference sequence, wherein the reference sequence comprises a first sequence of base pairs (bps), and the SR comprises a second sequence of bps;

in response to determination that the SR is aligned with the reference sequence at a first position in the reference sequence:

generating an SR metadata entry corresponding to the SR; and

inserting the SR metadata entry to a linked list in a SR metadata collection, wherein the SR metadata collection includes an array of linked lists, an array index of an array element for the linked list in the array of the SR metadata collection corresponding to the first position of the reference sequence where the SR is aligned, wherein the linked list comprises a plurality of SR metadata entries after inserting the SR metadata entry, wherein SRs corresponding to the plurality of SR metadata entries in the linked list are all aligned at the first position of the reference sequence, and wherein a size of the array is at least a quantity of bp positions in the reference sequence;

determining that alignment of all of a plurality of SRs stored in a fastq file against the reference sequence has been performed, wherein corresponding SR metadata entries of aligned SRs of the plurality of SRs have been automatically sorted by aligned positions of the aligned SRs when each of the corresponding SR metadata entries was inserted to a corresponding linked list of the array, the corresponding linked list indexed at a corresponding array index based on a corresponding alignment position; and

generating a binary alignment map (BAM) file based on the array of linked lists in the SR metadata collection, the BAM file being a binary presentation of the aligned SRs sorted by the aligned positions, and the BAM file being an input directly fed into a Mark Duplicates sub-system.

8. The computer device of claim 7 , wherein the SR metadata entry comprises an identifier (ID) of the SR.

9. The computer device of claim 8 , operations further comprising:

before the alignment of the SR is performed, receiving the SR from the plurality of SRs stored in the fastq file, wherein the ID of the SR comprises an index of the SR in the plurality of SRs.

10. The computer device of claim 8 , SR metadata entry further comprises alignment results generated by performing the alignment of the SR.

11. The computer device of claim 10 , wherein the alignment results comprise a concise idiosyncratic gapped alignment report (CIGAR), a Flag, and a mark duplicate (MD) notation.

12. A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one processor unit, cause the at least one processor unit to perform operations, the operations comprising:

performing alignment of a short read (SR) against a reference sequence, wherein the reference sequence comprises a first sequence of base pairs (bps), and the SR comprises a second sequence of bps;

in response to determination that the SR is aligned with the reference sequence at a first position in the reference sequence:

generating an SR metadata entry corresponding to the SR; and

inserting the SR metadata entry to a linked list in a SR metadata collection, wherein the SR metadata collection includes an array of linked lists, an array index of an array element for the linked list in the array of the SR metadata collection corresponding to the first position of the reference sequence where the SR is aligned, wherein the linked list comprises a plurality of SR metadata entries after the inserting, wherein SRs corresponding to the plurality of SR metadata entries in the linked list are all aligned at the first position of the reference sequence, and wherein a size of the array is at least a quantity of bp positions in the reference sequence;

determining that alignment of all of a plurality of SRs stored in a fastq file against the reference sequence has been performed, wherein corresponding SR metadata entries of aligned SRs of the plurality of SRs have been automatically sorted by aligned positions of the aligned SRs when each of the corresponding SR metadata entries was inserted to a corresponding linked list of the array, the corresponding linked list indexed at a corresponding array index based on a corresponding alignment position; and

generating a binary alignment map (BAM) file based on the array of linked lists in the SR metadata collection, the BAM file being a binary presentation of the aligned SRs sorted by the aligned positions, and the BAM file being an input directly fed into a Mark Duplicates sub-system.

13. The non-transitory computer-readable medium of claim 12 , wherein the SR metadata entry comprises an identifier (ID) of the SR.

14. The non-transitory computer-readable medium of claim 13 , the operations further comprising:

before the performing the alignment of the SR, receiving the SR from the plurality of SRs stored in the fastq file, wherein the ID of the SR comprises an index of the SR in the plurality of SRs.

15. The non-transitory computer-readable medium of claim 13 , the SR metadata entry further comprises alignment results generated by the performing the alignment of the SR.

16. The non-transitory computer-readable medium of claim 15 , wherein the alignment results comprise a concise idiosyncratic gapped alignment report (CIGAR), a Flag, and a mark duplicate (MD) notation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2020
From: ROODI, MEYSAM; LAK, ZAHRA
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 054691/0943 →
Continuity (3)
Continuation PCTCN2020078908 · Mar 12, 2020
Provisional Application 62818507 · Mar 14, 2019
Related Publication 20210217492A1 · Jul 15, 2021
References Cited (23)
US 9824068B2 · Wong · 2017 [cited by applicant]
US 10901887B2 · Jacob · 2021 [cited by examiner]
US 20120330567A1 · Bauer et al. · 2012 [cited by applicant]
US 20130137588A1 · Shendure et al. · 2013 [cited by applicant]
US 20140163900A1 · Erlich et al. · 2014 [cited by applicant]
US 20140280344A1 · Draghicescu et al. · 2014 [cited by applicant]
US 20140288851A1 · Park et al. · 2014 [cited by applicant]
US 20140297196A1 · Olson · 2014 [cited by applicant]
US 20150363549A1 · Kimura · 2015 [cited by applicant]
US 20170337325A1 · Olson · 2017 [cited by applicant]
US 20180121601A1 · Hahm · 2018 [cited by examiner]
US 20190385703A1 · Aiden et al. · 2019 [cited by applicant]
CN 106687966A · 2017 [cited by applicant]
CN 107609350A · 2018 [cited by applicant]
CN 109411020A · 2019 [cited by applicant]
WO 2017214461A1 · 2017 [cited by applicant]
Khalil, M. I. “A new heuristic approach for DNA sequences alignment.” International Journal of Image, Graphics and Signal Processing 7.12 (2015): 18. (Year: 2015). [cited by examiner]
Hatem, M., & Ruml, W. (2013). External Memory Best-First Search for Multiple Sequence Alignment. Proceedings of the AAAI Conference on Artificial Intelligence, 27(1), 409-416. https://doi.org/10.1609/aaai.v27i1.8626 (Ye… [cited by examiner]
Nielsen, F. (2009). Linked Lists. In: A Concise and Practical Introduction to Programming Algorithms in Java. Undergraduate Topics in Computer Science. Springer, London (Year: 2009), 23 Pages. [cited by applicant]
Li, H., et al., “Fast and accurate short read alignment with Burrows-Wheeler transform”, Bioinfomatics, Sequence analysis, vol. 25, No. 14, Feb. 20, 2009, 7 Pages. [cited by applicant]
Luca Pireddu, Simone Leo, Gianluigi Zanetti, SEAL: a distributed short read mapping and duplicate removal tool, Bioinformatics, vol. 27, Issue 15, Aug. 2011, pp. 2159-2160 (Year: 2011). [cited by applicant]
Hatem, M., & Ruml, W. (2013). External Memory Best-First Search for Multiple Sequence Alignment. Proceedings of the AAAI Conference on Artificial Intelligence, 27(1), 409-416. https://doi.org/10.1609/aaai.v27i1 .8626 (Y… [cited by applicant]
Khalil, M. I. “A new heuristic approach for DNA sequences alignment.” International Journal of Image, Graphics and Signal Processing 7.12 (2015): 18. (Year: 2015), 6 Pages. [cited by applicant]