High-Level Synthesis of a Genomic Database Search Engine

Slides:



Advertisements
Similar presentations
Fa07CSE 182 CSE182-L4: Database filtering. Fa07CSE 182 Summary (through lecture 3) A2 is online We considered the basics of sequence alignment –Opt score.
Advertisements

A Scalable and Reconfigurable Search Memory Substrate for High Throughput Packet Processing Sangyeun Cho and Rami Melhem Dept. of Computer Science University.
Memory Address Decoding
Gapped BLAST and PSI-BLAST Altschul et al Presenter: 張耿豪 莊凱翔.
BLAST Sequence alignment, E-value & Extreme value distribution.
Q-gram Based Database Searching Using A Suffix Array (QUASAR) S. Burkhardt A. Crauser H-P. Lenhof Max-Planck Institut f. Informatik, SaarbrückenDeutsches.
Reviewer: Jing Lu Gigabit Rate Packet Pattern- Matching Using TCAM Fang Yu, Randy H. Katz T. V. Lakshman UC Berkeley Bell Labs, Lucent ICNP’2004.
Multithreaded FPGA Acceleration of DNA Sequence Mapping Edward Fernandez, Walid Najjar, Stefano Lonardi, Jason Villarreal UC Riverside, Department of Computer.
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Sequence Alignment Storing, retrieving and comparing DNA sequences in Databases. Comparing two or more sequences for similarities. Searching databases.
Fa05CSE 182 CSE182-L4: Scoring matrices, Dictionary Matching.
Data Partitioning for Reconfigurable Architectures with Distributed Block RAM Wenrui Gong Gang Wang Ryan Kastner Department of Electrical and Computer.
Storage Assignment during High-level Synthesis for Configurable Architectures Wenrui Gong Gang Wang Ryan Kastner Department of Electrical and Computer.
Heuristic Approaches for Sequence Alignments
Fa05CSE 182 CSE182-L5: Scoring matrices Dictionary Matching.
A Performance and Energy Comparison of FPGAs, GPUs, and Multicores for Sliding-Window Applications From J. Fowers, G. Brown, P. Cooke, and G. Stitt, University.
Introduction to computational genomics – hands on course Gene expression (Gasch et al) Unit 1: Mapper Unit 2: Aggregator and peak finder Solexa MNase Reads.
A Fast Algorithm for Multi-Pattern Searching Sun Wu, Udi Manber May 1994.
Heuristic methods for sequence alignment in practice Sushmita Roy BMI/CS 576 Sushmita Roy Sep 27 th,
Biostatistics-Lecture 15 High-throughput sequencing and sequence alignment Ruibin Xi Peking University School of Mathematical Sciences.
GPU Acceleration of Pyrosequencing Noise Removal Dept. of Computer Science and Engineering University of South Carolina Yang Gao, Jason D. Bakos Heterogeneous.
FPGA FPGA2  A heterogeneous network of workstations (NOW)  FPGAs are expensive, available on some hosts but not others  NOW provide coarse- grained.
Filter Algorithms for Approximate String Matching Stefan Burkhardt.
Improving Efficiency of I/O Bound Systems More Memory, Better Caching Newer and Faster Disk Drives Set Object Access (SETOBJACC) Reorganize (RGZPFM) w/
1 CPS216: Advanced Database Systems Notes 04: Operators for Data Access Shivnath Babu.
« Performance of Compressed Inverted List Caching in Search Engines » Proceedings of the International World Wide Web Conference Commitee, Beijing 2008)
PERFORMANCE ANALYSIS cont. End-to-End Speedup  Execution time includes communication costs between FPGA and host machine  FPGA consistently outperforms.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
Hugh E. Williams and Justin Zobel IEEE Transactions on knowledge and data engineering Vol. 14, No. 1, January/February 2002 Presented by Jitimon Keinduangjun.
Indexing DNA sequences for local similarity search Joint work of Angela, Dr. Mamoulis and Dr. Yiu 17/5/2007.
Hash Algorithm and SSAHA Implementations Zemin Ning Production Software Group Informatics.
CS Operating System & Database Performance Tuning Xiaofang Zhou School of Computing, NUS Office: S URL:
A Configurable High-Throughput Linear Sorter System Jorge Ortiz Information and Telecommunication Technology Center 2335 Irving Hill Road Lawrence, KS.
Mining Document Collections to Facilitate Accurate Approximate Entity Matching Presented By Harshda Vabale.
Pairwise Local Alignment and Database Search Csc 487/687 Computing for Bioinformatics.
PatternHunter: A Fast and Highly Sensitive Homology Search Method Bin Ma Department of Computer Science University of Western Ontario.
2016/1/27Summer Course1 Pattern Search Problems Part I: Fundament Concept.
Biosequence Similarity Search on the Mercury System Praveen Krishnamurthy, Jeremy Buhler, Roger Chamberlain, Mark Franklin, Kwame Gyang, and Joseph Lancaster.
Pairwise Sequence Alignment (cont.) (Lecture for CS397-CXZ Algorithms in Bioinformatics) Feb. 4, 2004 ChengXiang Zhai Department of Computer Science University.
SPLITD Tom Madden NCBI. Problems Biological databases growing faster than computer memory. Fastest CPU’s get put into 1 or 2 CPU machines first. Most.
Query by Image and Video Content: The QBIC System M. Flickner et al. IEEE Computer Special Issue on Content-Based Retrieval Vol. 28, No. 9, September 1995.
Parallel tree search: An algorithmic approach for multi- field packet classification Authors: Derek Pao and Cutson Liu. Publisher: Computer communications.
2/19/2016http://csg.csail.mit.edu/6.375L11-01 FPGAs K. Elliott Fleming Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
Heuristic Alignment Algorithms Hongchao Li Jan
An Improved Multi-Pattern Matching Algorithm for Large-Scale Pattern Sets Author : Zhan Peng, Yu-Ping Wang and Jin-Feng Xue Conference: IEEE 10th International.
Introduction to Intrusion Detection Systems. All incoming packets are filtered for specific characteristics or content Databases have thousands of patterns.
1 Contents Memory types & memory hierarchy Virtual memory (VM) Page replacement algorithms in case of VM.
Heuristic Methods for Sequence Database Searching BMI/CS 776 Mark Craven February 2002.
DAQ Selection Discussion DAQ Subgroup Phone Conference Christopher Crawford
Research Overview and Administrative Vision
Networked Software Systems Laboratory
Computing challenges in working with genomics-scale data
A database index to large biological sequences
Fast and Robust Hashing for Database Operators
15.1 – Introduction to physical-Query-plan operators
CPS216: Data-intensive Computing Systems
BLAST Anders Gorm Pedersen & Rasmus Wernersson.
A Dynamically Reconfigurable Automata Processor Overlay
SigMatch Fast and Scalable Multi-Pattern Matching
Fast Sequence Alignments
Scalable Memory-Less Architecture for String Matching With FPGAs
Comparative Genomics.
Alan Jovic1, Kresimir Jozic2, Davor Kukolja1,
Instructor: Dr. Phillip Jones
Contents Memory types & memory hierarchy Virtual memory (VM)
Parallel System for BLAST
Open Source Activity Showcase Computational Storage SNIA SwordfishTM
Large-scale Packet Classification on FPGA
Sequence alignment, E-value & Extreme value distribution
Accelerating Regular Path Queries using FPGA
Presentation transcript:

High-Level Synthesis of a Genomic Database Search Engine Rasha Karakchi, Jordan Bradshaw, Jason D. Bakos This material is based upon work supported by the National Science Foundation under Grant No. 1421059. Heterogeneous and Reconfigurable Computing Group

Downstream processing Motivation Genomic databases large and growing fast NCBI BLAST widely used for database search Must scan perform entire database for each query I/O (disk) bound Query Downstream processing Database Database’ kernel

Background BLAST Filter: 1) Decompose query 2) Identify seeds AACBBAV 3) Identify High Scoring Pairs (HSPs): AAC ACB CBB BBA BAV 4) Look for HSPs of the same total length in each DB record Existing FPGA implementations are direct implementations of software

Indices of likely matches Downstream processing Our Approach Database Preprocess BRAM DRAM Disk Pattern match: HSPs Indices of likely matches Downstream processing Query FPGA+DRAM CPU+disk

(List of HSPs in database) Filter Design Index (List of HSPs in database) Table of Contents Suffix Table HSP / Length Start Length ACBC-8 1 ACCV-9 CBBC-6 2 CBCV-7 3 Record Start 2 4 AC BC CB CV 1 Disk (10X size of DB) DRAM (160 MB) On-chip (1 Mb)

Filter Design Synthesized with Vivado HLS Multiple PEs When found, schedule access to DRAM All PEs together synthesized as single pipeline Performs at WCET Detects HSP patterns within fixed windows

Results # PEs II Pipeline Depth Throughput (Mchars/s) 12 40 9.2 16 44 FPGA Performance # PEs II Pipeline Depth Throughput (Mchars/s) 12 40 9.2 16 44 8.4 20 48 7.7 24 52 7.1 28 56 6.6 32 60 6.2 36 64 5.8 68 5.4 72 5.1 CPU Baseline Performance   Threads upper bound Thrp't. (Mc/s) lower bound 1 8.7 2.4 2 11.5 3.9 3 8.3 4.6 4 7.0 5 6.1 3.7 6 5.0 3.6 7 4.7 3.4 8 4.2 3.1 Faster for high-hit rate queries despite having less than half DRAM b/w

See our poster in the next poster session Thank you! See our poster in the next poster session