Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London,

Slides:



Advertisements
Similar presentations
1 Very fast and simple approximate string matching Information Processing Letters, 72:65-70, G. Navarro and R. Baeza-Yates Advisor: Prof. R. C. T.
Advertisements

1 Rules for Approximate String Matching R.C.T. Lee.
24-26 July 2006EE2006 Conference, Liverpool, UK1 Dr T. Laoui 1, John ODonoghue 2 University of Wolverhampton 1 School of Engineering and Built Environment.
© Copyright 2010 Lead Paint Safety Association
Catherine Hardman Deputy Director (Collections) KDRS Benefit Framework and Value Chain: a use case for archaeology JISC Dissemination event London, 12.
Towards a Quadratic Time Approximation of Graph Edit Distance Fischer, A., Suen, C., Frinken, V., Riesen, K., Bunke, H. Contents Introduction Graph edit.
© 2001 empolis UK1 Topic Maps, NewsML and XML: Possible Integration and Implementations. By Soelwin Oo.
P&J Business Solutions
Pitching for finance Social Enterprise North West February 2014.
1 How to set up a website a step by step guide.
Good Salespeople johnpc ltd: John Cunningham.
Contrast-Aware Halftoning Hua Li and David Mould April 22,
Shift-And Approach to Pattern Matching in LZW Compressed Text Takuya KIDA Department of Informatics Kyushu University, Japan Masayuki TAKEDA Ayumi SHINOHARA.
Project Proposal Presented by Michael Kazecki. Outline Background –Algorithms Goals Ideas Proposal –Introduction –Motivation –Implementation.
Factor Oracle, Suffix Oracle 1 Factor Oracle Suffix Oracle.
1 String Matching of Bit Parallel Suffix Automata.
Recuperació de la informació Modern Information Retrieval (1999) Ricardo-Baeza Yates and Berthier Ribeiro-Neto Flexible Pattern Matching in Strings (2002)
Sabegh Singh Virdi ASC Processor Group Computer Science Department
Data Parallel Algorithms Presented By: M.Mohsin Butt
Introduction to Computers and Programming. Some definitions Algorithm: –A procedure for solving a problem –A sequence of discrete steps that defines such.
String Matching COMP171 Fall String matching 2 Pattern Matching * Given a text string T[0..n-1] and a pattern P[0..m-1], find all occurrences of.
Embedded Systems Laboratory Informatics Institute Federal University of Rio Grande do Sul Porto Alegre – RS – Brazil SRC TechCon 2005 Portland, Oregon,
Recuperació de la informació Modern Information Retrieval (1999) Ricardo-Baeza Yates and Berthier Ribeiro-Neto Flexible Pattern Matching in Strings (2002)
Chapter 9: Huffman Codes
Recuperació de la informació Modern Information Retrieval (1999) Ricardo-Baeza Yates and Berthier Ribeiro-Neto Flexible Pattern Matching in Strings (2002)
Module C9 Simulation Concepts. NEED FOR SIMULATION Mathematical models we have studied thus far have “closed form” solutions –Obtained from formulas --
Indexing and Searching
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Iterative Methods for Solving Linear Systems of Equations ( part of the course given for the 2 nd grade at BGU, ME )
A Fast Algorithm for Multi-Pattern Searching Sun Wu, Udi Manber May 1994.
By: Mike Neumiller & Brian Yarbrough
Recuperació de la informació Modern Information Retrieval (1999) Ricardo-Baeza Yates and Berthier Ribeiro-Neto Flexible Pattern Matching in Strings (2002)
String Matching Using the Rabin-Karp Algorithm Katey Cruz CSC 252: Algorithms Smith College
Challenges Bit-vector approach Conclusion & Future Work A subsequence of a string of symbols is derived from the original string by deleting some elements.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Institute of Applied Microelectronics and Computer Engineering College of Computer Science and Electrical Engineering, University of Rostock Slide 1 Color.
Twelve Ways to Fool the Masses When Giving Performance Results on Parallel Supercomputers – David Bailey (1991) Eileen Kraemer August 25, 2002.
Graph Data Management Lab, School of Computer Science Add title here: Large graph processing
Tamanna Chhabra, Sukhpal Singh Ghuman, Jorma Tarhio Tuning Algorithms for Jumbeled Matching.
Subject: Operating System.
Huffman coding Content 1 Encoding and decoding messages Fixed-length coding Variable-length coding 2 Huffman coding.
Author: B. C. Bromley Presented by: Shuaiyuan Zhou Quasi-random Number Generators for Parallel Monte Carlo Algorithms.
String Matching of Regular Expression
Tamanna Chhabra, M. Oguzhan Kulekci, and Jorma Tarhio Aalto University.
Hannu Peltola Jorma Tarhio Aalto University Finland Variations of Forward-SBNDM.
06/12/2015Applied Algorithmics - week41 Non-periodicity and witnesses  Periodicity - continued If string w=w[0..n-1] has periodicity p if w[i]=w[i+p],
Pairwise Sequence Alignment Part 2. Outline Summary Local and Global alignments FASTA and BLAST algorithms Evaluating significance of alignments Alignment.
Data and Knowledge Engineering Laboratory Clustered Segment Indexing for Pattern Searching on the Secondary Structure of Protein Sequences Minkoo Seo Sanghyun.
Faster Approximate String Matching over Compressed Text By Gonzalo Navarro *, Takuya Kida †, Masayuki Takeda †, Ayumi Shinohara †, and Setsuo Arikawa.
VizTree Huyen Dao and Chris Ackermann. Introducing example
A new matching algorithm based on prime numbers N. D. Atreas and C. Karanikas Department of Informatics Aristotle University of Thessaloniki.
Rabin & Karp Algorithm. Rabin-Karp – the idea Compare a string's hash values, rather than the strings themselves. For efficiency, the hash value of the.
Recuperació de la informació Modern Information Retrieval (1999) Ricardo-Baeza Yates and Berthier Ribeiro-Neto Flexible Pattern Matching in Strings (2002)
Advanced Data Structure: Bioinformatics
Exact string matching: one pattern (text on-line)
String Matching (Chap. 32)
Ambika Shrestha Chitrakar Prof. Slobodan Petrovic
Recuperació de la informació
Rabin & Karp Algorithm.
Fast Fourier Transform
Accelerating Approximate Pattern Matching with Processing-In-Memory (PIM) and Single-Instruction Multiple-Data (SIMD) Programming Damla Senol Cali1 Zülal.
Organizing the Elements
Accelerating Approximate Pattern Matching with Processing-In-Memory (PIM) and Single-Instruction Multiple-Data (SIMD) Programming Damla Senol Cali1, Zülal.
Multiple Pattern Matching Revisited
Recuperació de la informació
Suffix Arrays and Suffix Trees
Jumbled Matching with SIMD
Improved Two-Way Bit-parallel Search
Optimal Co-design of FPGA Implementations for MPC
BitMAC: An In-Memory Accelerator for Bitvector-Based
Presentation transcript:

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK1/48 Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK-UEKAE National Research Institute of Electronics & Cryptology,Turkey

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK2/48 The area of research Pattern Matching On-line Off-line Exact Approximate Using Bit-parallelism Other techniques...

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK3/48 Bit-parallelism ? Computers perform bitwise operations very fast. Designing algorithms that benefit from that intrinsic property of processors

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK4/48 Previous bit-parallel pattern matching algorithms Shift-or algorithm –Shift-or (SO), (Baeza-Yates&Gonnet,1992) –Fast (FSO), Average optimal (AOSO), and Fast AOSO (FAOSO), (Fredriksson&Grabowski,2005) BNDM algorithm –Actually (BDM + SO) BNDM (Navarro&Raffinot,2000) –SBNDM (Peltola&Tarhio,2003) –SBNDM2 (Holub&Durian,2005)

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK5/48 Problems in Bit-parallel Pattern Matching Lack of shift mechanism (in original idea) –BNDM solved it. –Recent SO variants (AOSO, FAOSO) also include shift mechanisms. Patterns are required to be no longer than the computer word size !

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK6/48 What causes that limitation? The way that the bits are used! In previous approaches, each bit marks the position of a character in the pattern. If pattern is longer than the computer word size, more words are needed. significant drop in efficiency

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK7/48 Bitmasks in previous algorithms Mask creation in BNDM (SO is also similar) : unsigned long B[ALPHABET_SIZE]; for (a є Σ) B[a] = 0; for j=1..m B[p j ] = B[p j ] | (1<<(m-j)); Bits in mask B[c] express the location of character c in the pattern, –e.g. For pattern P = abaab B[a] = B[b] =

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK8/48 How to overcome ? Load a different information, which is lenght independent, to a single bit. Each bit carries information about the whole pattern right shifted some amount in the proposed bit-parallel length independent matching (BLIM).

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK9/48 Basic notation Text T = t 0 t 1 t 2 t 3...t n-1 Pattern P = p 0 p 1...p m-1 Computer Word Size W Σ denotes alphabet

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK10/48 Off-line Pattern Matching (in general...) Slide a window over the text Check & Shift Text : Pattern:

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK11/48 Sliding window p0p0 p1p1 p2p2 p m-1 0 p0p0 p1p1 p2p2 p0p0 p1p1 p2p p0p0 p1p1 p2p2 W-1 W-m+2 The window that is to be slid over T. W rows, ws = W+m-1 columns i th row contains i character right shifted P.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK12/48 Sliding window abaab abaab abaab abaab abaab abaab abaab abaab P = abaab W = 8

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK13/ abaab abaab abaab abaab abaab abaab abaab abaab tjtj t j+1 t j+2 t j+3 t j+4 t j+5 t j+6 t j+7 t j+8 t j+9 t j+10 t j+11 b Mask[b][6] = = A7 b 0 =1 b 1 =1 b 2 =1 b 3 =0 b 4 =0 b 5 =1 b 6 =0 b 7 =1 Bitmask Creation

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK14/48 Bitmask Mask[ch][pos] is a bitvector of W bits as b w-1 b w-2... b 1 b 0 where ch Є Σ, and 0 pos (W+m-1) Bits denote which of the alignments in the investigation window are appropriate when one observes character ch at position pos.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK15/48 Bitmask i th bit of Mask[ch][pos] gathers info whether the i character right shifted placement of pattern mathes with the observed ch at position pos. b i = 0, if (0 pos-i < m) and (ch p pos-i ) b i = 1, otherwise

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK16/48 P = abaab, W = 8, Σ = {a,b,c,d} (ch) ws = W + m – 1 = 12 (pos) Mask[ch][pos] =... Sample Bitmask

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK17/48 Up to now, we created the sliding window, and the associated bitmasks. How those masks are used for matching followed by a shift procedure?

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK18/48 Checking... Text Pattern window ch pos flag = flag = flag & Mask[ch][pos] W bits

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK19/48 Checking... Text Pattern window Continue until flag becomes zero or all the positions are visited. If all positions visited, there are some matches. The index of the bits that are 1 on the flag determine which of the alignments are observed. In what order we visit the positions on the window?

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK20/48 Scan Order A heuristic approach to visit minimum number of characters in case of a mismatch ScanOrder = {m-i,2m-i,...,km-i} – i = 1,2,...m – (km-i) < ws (ws = W+m-1)

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK21/48 Scan Order abaab abaab abaab abaab abaab abaab abaab abaab ScanOrder =4,9,3,8,2,7,1,6,11,0,5,10

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK22/48 Shifting... Text The amount of shift ? Pattern window

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK23/48 Shift Mechanism Same as Sundays quick search Move right according to the immediate text character succeding the current window under investigation

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK24/48 Shift Mechanism abaab abaab abaab abaab abaab abaab abaab abaab tjtj t j+1 t j+2 t j+3 t j+4 t j+5 t j+6 t j+7 t j+8 t j+9 t j+10 t j+11 abaab abaab abaab abaab abaab t j+12 Character Shift Value a 9 b 8 others

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK25/48 BLIM Algorithm Ws = W+m-1; Compute Mask; Compute ScanOrder; Compute Shift; Pad text T with ws number of NULL characters; i=0; while(i<n){ flag = Mask[T[i+ScanOrder[0]]][ScanOrder[0]]; for(i=j;j<ws;j++) flag &= Mask[T[i+ScanOrder[j]]][ScanOrder[j]]; if (flag){ Check bits of the flag to locate occurences } i+=Shift[T[i+ws]]; }

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK26/48 Sample Run

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK27/48 Complexity Best case : Worst Case: Minimum number of character comparison Maximum shift Minimum shift Maximum number of character comparison

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK28/48 Experimental Results On DNA sequences (Manzinis DNA compression corpus) On natural language text (enwik8.txt) 100 sample pattern for each length tested gcc -O3 Intel Xeon 2.4 Ghz, 3GB memory

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK29/48 BLIM vs. SO Family on DNA

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK30/48 BLIM vs. BNDM Family on DNA

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK31/48 Overall Performance on DNA

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK32/48 BLIM vs. SO Family on Nat.Lan.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK33/48 BLIM vs. BNDM Family on Nat.Lan.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK34/48 Overall performance on Nat. Lan.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK35/48 Multi-pattern Case Bit-parallel approaches suffer more in multi-pattern case, as the total length is more likely to exceed the word size. BLIM serves a good basis for that case with its ability to search up to W patterns of any length in a common bit-parallel fashion.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK36/48 Multi-pattern BLIM abaa bba abaa abaa abaa bba bba bba P = {abaa,bba} R = W / |P| = 8/2 = 4 pivot = min{R-1+|P i |, P i Є P} = 6 ws = max{R-1+|P i |, P i Є P} = 7

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK37/48 Multi-pattern BLIM Bitmask creation –straight forward as before. ScanOrder – Let s = min{ P i, P i Є P } S1 = { s-i, 2s-i,... ks-i}, i = 1,2,...,s (ks-i) < pivot ScanOrder = S1 U {pivot, pivot+1,...., ws-1}

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK38/48 Multi-BLIM Scan Order abaa bba abaa abaa abaa bba bba bba s = min {4,3} = 3 ScanOrder=2,5,1,4,0,3,6

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK39/48 Multi-BLIM Shift Mechanism abaa bba abaa abaa abaa bba bba bba tjtj t j+1 t j+2 t j+3 t j+4 t j+5 t j+6 t j bba bba bba abaa abaa abaa abaa Character Shift Value aa 4 ab 6 ba 6 bb 6 {c,d}a 7 {c,d}b 7...else 8

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK40/48 Experimental Results on Multi_BLIM Multi_BLIM is compared with Aho&Corasick and Commentz&Walter algorithms via the SPARE Parts 2003 toolkit. DNA pattern lenghts in between 4 to 30. NL pattern lenghts in between 2 to 20. Up to 32 patterns randomly collected for each test. Intel Xeon 2.4GHz, 3GB Memory Manzinis DNA corpus & enwik8.txt

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK41/48 Multi_BLIM Performance on DNA

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK42/48 Multi_BLIM Performance on Nat. Lan.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK43/48 About q-gram utilization? Instead of reading one character at a time, read more by the help of the recent advances in CPU architecture –Fredriksson, Shift-or string matching with super alphabets,2003 –Durian et al., Tuning BNDM with q-grams, 2009 Unfortunately, not so much gain because of BLIMs random access structure

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK44/48 About q-gram utilization Mainly 2 reasons for low gain when using q-grams in BLIM: 1.BLIM does not pass over the text sequentially, but instead performs distant reads on the investigation window. 2.Mask is of size |Σ|*(W+m-1). As Σ grows with q-gram usage, Mask becomes large that is not fitting into the first level cache.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK45/48 Conclusion An initial attempt to solve computer word size limitation in bit-parallel pattern matching The speed is in range of SBNDM, and SBNDM2, with an additional advantage that it does not require to do something special when input pattern length is longer than W.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK46/48 Conclusion It must be noted that, in general, it is slower than Lecroqs new algorithm, and also for lengths longer than 100, backward (suffix)oracle matching is a better alternative (applies to all bit-parallel algorithms also). Multi pattern BLIM shows good performance and maybe a strong alternative for classical multi pattern search algorithms.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK47/48 Acknowledgement Thanks to –Jorma Tarhio, –Kimmo Fredriksson, –Thierry Lecroq, for sharing their codes and comments.

Overcoming Computer Word Size Limitation in Bit-parallel Pattern Matching M. Oğuzhan Külekci TÜBİTAK - UEKAE 5/2/2009LSD&LAW'09, King's College, London, UK48/48 Thank you! any question?