Harnessing Associative Computing for Sequence Alignment with Parallel Accelerators

Similar documents
Keywords -Bioinformatics, sequence alignment, Smith- waterman (SW) algorithm, GPU, CUDA

Sequence Alignment with GPU: Performance and Design Challenges

SWAMP: Smith-Waterman using Associative Massive Parallelism

THE Smith-Waterman (SW) algorithm [1] is a wellknown

Fast Sequence Alignment Method Using CUDA-enabled GPU

Introduction to GPU computing

Comparative Analysis of Protein Alignment Algorithms in Parallel environment using CUDA

Biology 644: Bioinformatics

GPU Accelerated API for Alignment of Genomics Sequencing Data

OPEN MP-BASED PARALLEL AND SCALABLE GENETIC SEQUENCE ALIGNMENT

GPU 3 Smith-Waterman

Speeding up Subset Seed Algorithm for Intensive Protein Sequence Comparison

Bioinformatics explained: Smith-Waterman

A GPU Algorithm for Comparing Nucleotide Histograms

USING AN EXTENDED SUFFIX TREE TO SPEED-UP SEQUENCE ALIGNMENT

Compares a sequence of protein to another sequence or database of a protein, or a sequence of DNA to another sequence or library of DNA.

An Ultrafast Scalable Many-core Motif Discovery Algorithm for Multiple GPUs

FASTA. Besides that, FASTA package provides SSEARCH, an implementation of the optimal Smith- Waterman algorithm.

Dynamic Programming User Manual v1.0 Anton E. Weisstein, Truman State University Aug. 19, 2014

ENABLING NEW SCIENCE GPU SOLUTIONS

BIOL591: Introduction to Bioinformatics Alignment of pairs of sequences

Improving CUDASW++, a Parallelization of Smith-Waterman for CUDA Enabled Devices

Algorithms and Tools for Bioinformatics on GPUs. Bertil SCHMIDT

Accelerated GPU Based Protein Sequence Alignment An optimized database sequences approach

Accelerating Smith-Waterman Algorithm for Biological Database Search on CUDA-Compatible GPUs

BLAST, Profile, and PSI-BLAST

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

Biological Sequence Analysis. CSEP 521: Applied Algorithms Final Project. Archie Russell ( ), Jason Hogg ( )

Portland State University ECE 588/688. Graphics Processors

Brief review from last class

Journal of Computational Physics

How to Run NCBI BLAST on zcluster at GACRC

24 Grundlagen der Bioinformatik, SS 10, D. Huson, April 26, This lecture is based on the following papers, which are all recommended reading:

GPUBwa -Parallelization of Burrows Wheeler Aligner using Graphical Processing Units

High Performance Computing on GPUs using NVIDIA CUDA

Bioinformatics for Biologists

Recent Advances in Heterogeneous Computing using Charm++

As of August 15, 2008, GenBank contained bases from reported sequences. The search procedure should be

Current Trends in Computer Graphics Hardware

Accelerating Genomic Sequence Alignment Workload with Scalable Vector Architecture

GPU Accelerated Smith-Waterman

Associative Operations from MASC to GPU

Research Article GPU-Based Cloud Service for Smith-Waterman Algorithm Using Frequency Distance Filtration Scheme

Accelerating Smith-Waterman Alignment workload with Scalable Vector Computing

3 College of Computing, Georgia Institute of Technology, Atlanta, GA, 30332, USA.

A Study On Pair-Wise Local Alignment Of Protein Sequence For Identifying The Structural Similarity

Basic Local Alignment Search Tool (BLAST)

GPU-Supercomputer Acceleration of Pattern Matching

High Performance Technique for Database Applications Using a Hybrid GPU/CPU Platform

Biological Sequence Comparison on Hybrid Platforms with Dynamic Workload Adjustment

Lecture Overview. Sequence search & alignment. Searching sequence databases. Sequence Alignment & Search. Goals: Motivations:

Performance Comparison between Linear RVE and Linear Systolic Array Implementations of the Smith-Waterman Algorithm

AAlign: A SIMD Framework for Pairwise Sequence Alignment on x86-based Multi- and Many-core Processors

A Design of a Hybrid System for DNA Sequence Alignment

Data Mining Technologies for Bioinformatics Sequences

Sequence Alignment & Search

Cooperative Multitasking for GPU-Accelerated Grid Systems

Introduction to CUDA Algoritmi e Calcolo Parallelo. Daniele Loiacono

On the Efficacy of Haskell for High Performance Computational Biology

Sequencee Analysis Algorithms for Bioinformatics Applications

BIOINFORMATICS ORIGINAL PAPER

Accelerating Protein Sequence Search in a Heterogeneous Computing System

Graphics Processor Acceleration and YOU

Database Searching Using BLAST

Sequence Alignment. GBIO0002 Archana Bhardwaj University of Liege

Scalable Accelerator Architecture for Local Alignment of DNA Sequences

CS313 Exercise 4 Cover Page Fall 2017

CISC 636 Computational Biology & Bioinformatics (Fall 2016)

Revisiting the Speed-versus-Sensitivity Tradeoff in Pairwise Sequence Search

Bloom Filter Performance on Graphics Engines

A Scalable Coprocessor for Bioinformatic Sequence Alignments

PARALIGN: rapid and sensitive sequence similarity searches powered by parallel computing technology

B L A S T! BLAST: Basic local alignment search tool. Copyright notice. February 6, Pairwise alignment: key points. Outline of tonight s lecture

Software CBESW: Sequence Alignment on the Playstation 3 Adrianto Wirawan*, Chee Keong Kwoh, Nim Tri Hieu and Bertil Schmidt

Pairwise Sequence Alignment. Zhongming Zhao, PhD

CUDA PROGRAMMING MODEL Chaithanya Gadiyam Swapnil S Jadhav

Bioinformatics explained: BLAST. March 8, 2007

REDUCING BEAMFORMING CALCULATION TIME WITH GPU ACCELERATED ALGORITHMS

Grid Computing for Bioinformatics: An Implementation of a User-Friendly Web Portal for ASTI's In Silico Laboratory

CUDA Architecture & Programming Model

ECE 8823: GPU Architectures. Objectives

Sequence Alignment Using Graphics Processing Units. Dzivi PS

Dynamic Programming & Smith-Waterman algorithm

Parallelization of Tau-Leap Coarse-Grained Monte Carlo Simulations on GPUs

Bio-Sequence Analysis with Cradle s 3SoC Software Scalable System on Chip

Massively Parallel Architectures

INTRODUCTION TO BIOINFORMATICS

Lecture 5 Advanced BLAST

Hardware Acceleration of Sequence Alignment Algorithms An Overview

Similarity searches in biological sequence databases

Introduction to CUDA Algoritmi e Calcolo Parallelo. Daniele Loiacono

Tutorial 4 BLAST Searching the CHO Genome

Efficient Lists Intersection by CPU- GPU Cooperative Computing

BIOINFORMATICS A PRACTICAL GUIDE TO THE ANALYSIS OF GENES AND PROTEINS

Numerical Simulation on the GPU

INTRODUCTION TO BIOINFORMATICS

Alignment and clustering tools for sequence analysis. Omar Abudayyeh Presentation December 9, 2015

Hybrid KAUST Many Cores and OpenACC. Alain Clo - KAUST Research Computing Saber Feki KAUST Supercomputing Lab Florent Lebeau - CAPS

Research Article Improving the Mapping of Smith-Waterman Sequence Database Searches onto CUDA-Enabled GPUs

BLAST: Basic Local Alignment Search Tool Altschul et al. J. Mol Bio CS 466 Saurabh Sinha

Transcription:

Harnessing Associative Computing for Sequence Alignment with Parallel Accelerators Shannon I. Steinfadt Doctoral Research Showcase III Room 17 A / B 4:00-4:15 International Conference for High Performance Computing, Networking, Storage and Analysis (SC 08) Advisor: Dr. Johnnie W. Baker Parallel and Associative Computing Lab Computer Science Department Kent State University

Outline Introduction to Bioinformatics Local Sequence Alignment ASC about SWAMP SWAMP+ ASC on Metal gcggacgct ccacg-tgtc--c --c- tcgccgcgc cc-cgtctacc : : : : - : : - - -- - : : :: - : gggccct cctggctcccaac agc ttctcagttc ccacttc Dynamic Programming - Automatic Parallelization Conclusion Questions? 2

What is Bioinformatics? Bioinformatics is the field of science in which biology, computer science, and information technology merge to form a single discipline. * The ultimate goal: enable the discovery of new biological insights create a global perspective from which unifying principles in biology can be discerned aattctaatt tctttccatg gagtttttca ttagatccag aaaaaagaag tcaatctctt tttacaaact actgccctaa agaatcatac tttaatccgt tggaggggta agactgcact gtgacatgac tatagaaagt agatttgtat cctagttcta ttatccatgt gtgtaaggca Human Xp DNA base pairs 180 of 5303 base pairs *Definition from NCBI 3

Pairwise Local Sequence Alignment Search for regions of high similarity between two strings Similar Characters Similar Structure Similar Function One of the most common fundamental tasks is local sequence alignment 4

Pairwise Local Sequence Alignment Search for regions of high similarity between two strings Similar Characters Similar Structure Similar Function Homologous Sequences (derived by humans) Ancestral Relationships Gene Functionality Aid in Drug Discovery (preserved by evolution) 5

Goals for Sequence Alignment Provide Accurate (use Smith-Waterman) Fast More detailed alignments One of the most used operations in bioinformatics 6

Sequence Alignment Methods Two possible approaches: Heuristics (approximations): e.g. BLAST, mpiblast, FastA the more efficient the heuristics usually the worse the quality of the results Exact algorithms: Jaligner, MPSRCH, Smith-Waterman Parallel Processing: get high-quality results in less time (using the Smith-Waterman algorithm) 7

Sequence Alignment Methods Speed vs. Quality BLAST, FastA, Smith-Waterman Slower Search Speed Faster BLAST Lower FastA Data Quality Smith- Waterman Higher 8

Traceback in the Smith-Waterman Algorithm 1) Find the maximum computed value Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 9

Aligning using Smith-Waterman Algorithm Compare all possible combinations of sequence characters against each other 10

Aligning using Smith-Waterman Algorithm Compare all possible combinations of sequence characters against each other Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 11

Aligning using Smith-Waterman Algorithm Compare all possible combinations of sequence characters against each other Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 12

Aligning using Smith-Waterman Algorithm Compare all possible combinations of sequence characters against each other Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 13

Aligning using Smith-Waterman Algorithm Compare all possible combinations of sequence characters against each other Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 14

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 15

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 16

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 17

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 18

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 19

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 20

Aligning using Smith-Waterman Algorithm Compare all possible combinations - but it has dynamic programming data dependencies Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 21

Traceback in the Smith-Waterman Algorithm 1) Find the maximum computed value Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 22

Traceback in the Smith-Waterman Algorithm 1) Find the maximum computed value 2) Traceback until you reach 0 s Alignment: CATTG C - -TG Cost Key Match +10 Miss -3 Insert a Gap -3 Extend a Gap -1 23

Goals for Sequence Alignment Provide Accurate (use Smith-Waterman) Fast More detailed alignments One of the most used operations in bioinformatics 24

Motivation for Faster Alignment Sequences analyzed by comparison with database(s) Complexity of comparisons proportional to the product of query size times database size i.e. your sequence size * the size of each sequence * number of sequences 262 * 366 * 1,000,000 = 95,892,000,000 comparisons The number of base pairs doubles ~18 months in GenBank 85,759,586,764 bases in 82,853,685 sequence records (2/08) 25

Genomic Databases Growth of the International Nucleotide Sequence Database Collaboration (INSDC) base pairs contributed by: EMBL DDJB GenBank Base pairs in (billions) Exponential growth of public sequence data means more to align with; the faster an alignment, the better. 26

Get It, Got It, Good (or Better) ctcgccgcgc ggcggacgct ccacgtgtcc cccgtctacc gggccctcct ggctcccaac agcttctcag ttcccacttc Have These Want This Associative SIMD Model - ASC Use This 27

Get It, Got It, Good (or Better) ctcgccgcgc ggcggacgct ccacgtgtcc cccgtctacc gggccctcct ggctcccaac agcttctcag ttcccacttc Have These Want This ClearSpeed Advance 620 PCI-X board 50 GFLOPS peak performance 25W average power dissipation Use This 28

Get It, Got It, Good (or Better) ctcgccgcgc ggcggacgct ccacgtgtcc cccgtctacc gggccctcct ggctcccaac agcttctcag ttcccacttc Have These Want This NVIDIA C870 Tesla GPGPU 518 Peak GFLOPS on Tesla 170W peak, 120W typical Use This 29

ASC: Associative Architecture SIMD with special associative features Fine-grained parallelism Designed for fast associative searches Content-based searches, not memory address 30

ASC Advantages Quick data movement in SIMD Move raw data in parallel At each step, PEs follow the algorithmic steps for data movement in lock step No message passing like MPI/PVM No store/forward No headers No explicit synchronizing 31

ASC: Associative Architecture Very fast operations for: Finding Maximum / Minimum Finding if there are Any Responders Pick One active PE 32

Parallelizing the Smith-Waterman Algorithm 33

Parallelizing the Smith-Waterman Algorithm 34

Parallelizing the Algorithm 35

Parallelizing the Algorithm 36

Parallelizing the Algorithm C A T T G 37

SWAMP (Smith-Waterman using Associative Massive Parallelism) Order of Computations Used PEs Unused PEs 38

Goals for Sequence Alignment Provide Fast Accurate (use Smith-Waterman) More detailed alignments Highest accuracy with more higher information content would be better 39

SWAMP+ SWAMP+ returns multiple non-overlapping sequences Search and process with SWAMP multiple times Return top k non-overlapping, non-intersecting sequences Reveal additional information Spatial information Length of comparisions Identify regulatory regions and motifs 40

ASC on Metal ASC SIMD with Additional Features Associative Functions Associative Search Search via Content, not Memory Address Associative Functions ClearSpeed SIMD Accelerator (64-bit FP) 50 GFLOPS peak performance 25W average power dissipation NVIDIA Tesla GPGPU Stream Processor (32-bit FP) 518 Peak GFLOPS on Tesla Series 170W peak, 120W typical 41

ASC on Metal Associative Functions NVIDIA Tesla GPGPU x 2 42

GPGPU Internal Organization Multiple Levels of Parallelism Up to 512 threads per block Communicate through shared memory Grids of thread blocks SPMD Computation Model All data processed by the same program (kernel) From Scalable Parallel Programming with CUDA. From GPUs for Parallel Programming Vol. 6, No. 2 - March/April 2008 by John Nickolls, et. al. 43

ASC to GPGPU Mapping ASC GPGPU PE Thread Local memory that belongs solely to PE / Thread PE Interconnection Network Per-block Shared Memory All PEs Block Limited here to 512 separate threads per block Multiple ASC Model (MASC) GPGPU Multiple Instruction Streams Multiple Blocks Mulitple MASC programs Multiple Grids 44

Q & A Contact Info: Shannon Steinfadt ssteinfa@cs.kent.edu http://www.cs.kent.edu/~ssteinfa 45

References CUDA Information J. Nickolls, I. Buck, M. Garland, K. Skardon, Scalable Parallel Programming with CUDA, ACM Queue Magazine, pp. 41 53, March/April 2008. Parallel Sequence Alignment Others S. A Manavski and G. Valle, CUDA Compatible GPU Cards as Efficient Hardware Accelerators for Smith-Waterman Sequence Alignment, BMC Bioinformatics, March 2008. M. Farrar, Striped Smith-Waterman Speeds Database Searches Six Times over Other SIMD Implementations, Bioinformatics, pp. 156 161, Jan. 2007. T. Rogens and E. Seeberg, Six-fold speed-up of Smith-Waterman sequence database searches using parallel processing on common microprocessors. Bioinformatics 16(8): 699-706, 2000. W. Liu, B. Schmidt, G. Voss, A. Schröder, and W. Müller-Wittig, Bio-Sequence Database Scanning on a GPU, Proc. 20th IEEE Int'l Parallel and Distributed Processing Symp. High Performance Computational Biology (HiCOMB) Workshop, 2006. 46