![Page 1: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/1.jpg)
Virdi Sabegh Singh(Advisor Dr. Robert A. Walker)Computer Science Department
Kent State University
Longest Common Subsequence Algorithm on ASC Processors using Coterie Network
![Page 2: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/2.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome matching Overview of LCS Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 3: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/3.jpg)
Presentation Outline Brief introduction on Coterie Network Longest Common Subsequence on Coterie
Network Exact match
Parallel SM algorithm and its Limitation Longest Common Subsequence on Coterie
Network Approximate match
Summary and Future work
![Page 4: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/4.jpg)
String Matching String matching one of the most
fundamental operation in computing. May be two linear arrays of character can
be compared to determine their similarity One area where string matching gained
interest is in the area of bioinformatics, in particular in the area of searching genetic databases
The string involved are how ever enormous, efficient string processing is therefore a requirement
![Page 5: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/5.jpg)
String MatchingVariations Is Exact match the only solution? What if the pattern does not occur in the
text? It still makes sense to find the longest
subsequence that occurs both in the pattern and in the text. This is the longest common subsequence problem
Longest Common Subsequence, Longest Common Substring, Sequence alignment, Edit distance Problem are all variation of SM problem
![Page 6: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/6.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of LCS Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 7: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/7.jpg)
Motivation of LCS
Molecular Biology File comparison Screen redisplay Cheater finder Plagiarism
detection Codes and Error
Control
Spell checking Human speech Gas
Chromatography Bird song analysis Data compression Speech recognition
![Page 8: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/8.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome matching Overview of lcs Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 9: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/9.jpg)
Role of lcs in Molecular biology DNA sequences (genes) can be
represented as sequences of four letters ACGT, corresponding to the four submolecules forming DNA
When biologists find a new sequences, they typically want to know what other sequences it is most similar to
One way of computing how similar (homologous) two sequences are is to find the length of their longest common subsequence
![Page 10: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/10.jpg)
Role of lcs in Molecular biology This is a simplification, since in the biological
situation one would typically take into account not only the length of the lcs, but also e.g. how gaps occur when the lcs is embedded in the two original sequences.
An obvious measure for the closeness of two strings is to find the maximum number of identical symbols (preserving symbol order)
This by definition, is the longest common subsequence of the strings
![Page 11: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/11.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of lcs Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 12: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/12.jpg)
Genome Matching Genome: A Genome is a string of DNA bases A,C,G,T In genetics application, the two string could
correspond to two strands of DNA, which could, for example, come from two individuals, who we will consider genetically related, if they have a long subsequence common to their respective DNA sequences
The concept of subsequences of a string is different from the one of substring of a string
The string involved are how ever enormous, efficient string processing is therefore a requirement
![Page 13: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/13.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of LCS Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 14: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/14.jpg)
Longest Common Subsequences
Formally, we compare two strings, X[1..m] and Y[1..n], which are elements of the set Σ*; here Σ denotes the input alphabet containing σ symbols
The lcs of strings X and Y, lcs(X,Y) is a common subsequences of maximal length
Special case of the edit distance problem The distance between X and Y is defined as the minimal
number of elementary operations needed to transform the source string X to the target string Y
In practical applications, operation are restricted to insertions, deletions and substitutions
For each operation, an application dependent cost is assigned
![Page 15: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/15.jpg)
Longest Common Subsequences lcs can be reduced to other well known
problem lcs(X,Y) typically solved with the dynamic
programming technique and filling an mxn table
Table elements acts as a vertices in a graph, and the simple dependencies between the table values defines the edges
The task is to find the longest path between the vertices in the upper left and lower right corner of the table
![Page 16: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/16.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of lcs Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 17: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/17.jpg)
Folklore Algorithm Foundation of most of the LCS algorithm Given two strings, find the LCS common to both
strings. Example:
String 1: AGACTGAGGTA String 2: ACTGAG
AGACTGAGGTA - -ACTGAG - - - list of possible alignments - -ACTGA - G- - A- -CTGA - G- - A- -CTGAG - - -
The time complexity of this algorithm is clearly O(nm);
![Page 18: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/18.jpg)
Folklore Algorithm Actually this time does not depend on the
sequences u and v themselves but only on their lengths
By choosing carefully the order of computing the d(i,j)'s one can execute the above algorithm in space O(n+m)
The bottleneck in efficient parallelization of LCS problem are the calculating the value of diagonal elements, as shown
![Page 19: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/19.jpg)
As seen, the value of {i,j} depend upon the previous element {i-1,j-1}, when a match is found.
We may have more then one lcs for the same problem
In order to find the best LCS, we associate some parameter, to calculate the best possible alignment, which leads us to the Smith-Water Man Algorithm
The Smith-Waterman Algorithm uses the same concept that of Folklore algorithm, but gives us the optimal result (LCS)
Folklore Algorithm
![Page 20: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/20.jpg)
Folklore Algorithm
1 1 1 1 1
11
2111
1 222222
111111
3
1
1
1
44443222
3333
43332
5
55
43332 6
5
4
3
2 2
666
5 5
4
3
0 0 0 0 0 0 0 0 0 0 0 0
A G A C T G A G G T A
0
0
0
0
0
0
A
C
T
G
A
G
![Page 21: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/21.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of lcs Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor
![Page 22: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/22.jpg)
Parallel Counterpart Most of the Serial LCS algorithm runs in O(nm) time,
where n is the length of the text string, and m is the length of pattern string
Efficient Parallel algorithm do exist to solve this computational extensive task Some algorithm runs in O(max{n,m}) using O(min{n,m}) processors O(logn) using O(mn/logn) processors There are constant time algorithm for this LCS
problem using the DP approach, using some assumptions
![Page 23: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/23.jpg)
Computation Model Various Network Models have been used to solve
this lcs problem Some algorithm uses PRAM model, Suffix Tree,
2D-Mesh Network, Mesh with Reconfigurable buses, Mesh with Multiple buses etc
Algorithm which runs in constant time, assume that most of the operation are done in constant time
In parallel version, one of the important task is to distribute data efficiently and easy manner
![Page 24: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/24.jpg)
Presentation Outline String matching and its variations Motivation of LCS Role of LCS in Molecular Biology Genome Matching Overview of lcs Overview of Folklore algorithm Parallel Algorithms for LCS Discussion on ASC processor Brief introduction on Coterie Network
![Page 25: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/25.jpg)
The ASC Processor A scalable design implemented on a
million gate Altera FPGA SIMD-like architecture Currently, 36 8-bit Processing Elements
(PE) available 8-bit Instruction Stream (IS) control unit
with 8-bit Instruction and Data addresses, 32-bit instructions
![Page 26: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/26.jpg)
Flynn’s Taxonomy
![Page 27: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/27.jpg)
m
em
ory
an
d s
up
po
rtin
g c
ircu
itry
PE and Memory
Netw
ork
PE and Memory
PE and Memory
PE and Memory
CommonRegisters
ResponderResolution
Unit
PE Array
ControlUnit
Instr
ucti
on
Bu
s
Data
Bu
s
From Control Unit
The ASC Architecture
![Page 28: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/28.jpg)
The ASC Architecture Each PE listens to the IS through the
broadcast and reduction network PEs can communicate amongst
themselves using the PE Network PE may either execute or ignore the
microcode instruction broadcast by IS under the control of the Mask Stack
![Page 29: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/29.jpg)
The ASC Features Associative Search
Each PE can search its local memory for a key under the control of IS
Responder Resolution A special circuit signals if ‘at least one’ record
was found Masked Operation
Local Mask Stacks can turn on or off the execution of instruction from IS
![Page 30: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/30.jpg)
Communication between PE’s In 2D mesh network,
Communication between P.E’s themselves take place in two different ways
By using the nearest neighbors mesh interconnection network
Powerful variation on the nearest-neighbor mesh called the “Coterie network”, developed in response to the requirement for nonlocal communication
This network has properties that are significantly different from the usual mesh
Because the processors in a group share common properties and purpose, we call the group a coterie, and hence the name coterie network
![Page 31: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/31.jpg)
Presentation Outline Brief introduction on Coterie Network Longest Common Subsequence on Coterie
Network Exact match
Parallel SM algorithm and its Limitation Longest Common Subsequence on Coterie
Network Approximate match
Summary and Future work
![Page 32: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/32.jpg)
Coteries[ Weems & Herbordt ]“A small often selected group of persons who
associate with one another frequently” Features:
Related to other Reconfigurable broadcast network Describable using hypergraphs And they are dynamic in nature
Advantages: Propagation of information quickly over long
distances at electrical speed Support of one-to-many communication within
coterie, reconfigurability of the coterie
![Page 33: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/33.jpg)
Coterie Network Provides method of performing operations on
regions of an image in parallel Used extensively for Matrix Arithmetic, FFT,
Convex Hull Computation, Simulating a pyramid processors, General Permutation Routing and Parallel Prefix
Note that the coterie network is separate from the nearest-neighbor mesh, which we refer to as the SEWN network
Coterie network results in a new mode of parallelism that falls between SIMD and MIMD
![Page 34: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/34.jpg)
Coterie Network There is still a single instruction stream,
broadcasting of data values and collection of summary information are no longer restricted to a central entity, a capability that has previously been restricted to MIMD architecture
We refer this mode of parallelism as multiassociative, because the Coteries act as independent associative processors that share an instruction stream
Connection Machine-5 has such capabilities, but it was not purely SIMD system
![Page 35: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/35.jpg)
PE’s form Coteries
5 x 5 coterie network with switches shown in “arbitrary” settings. Shaded areas denotes coterie (the set of PEs Sharing same circuit)
![Page 36: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/36.jpg)
Coterie’s Physical Structure In the physical
implementation, each PE controls set of switches Four of these switches
control access in the different directions (N,S,E,W)
Two switches H and V are used to emulated horizontal and vertical buses
The last two switches NE and NW are used to creation of eight way connected region
Coteries Structure
NWNE
WSES
V
H E
S
W
: Switch
N
![Page 37: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/37.jpg)
Coterie Network The isolated group of processors called
coterie’s, have access only to the multicast within a coterie
When the switches are set, connected processors form a Coterie
The coterie network switches are set by loading the corresponding bits of the mesh control register in each P.E
![Page 38: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/38.jpg)
Basic Coterie structure algorithm The complexity is assumed to be O(1)
unless otherwise stated Transfer of data between two adjacent coteries Symmetry breaking between a pair of nodes in
a coterie Two nodes within a coterie exchange
information
![Page 39: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/39.jpg)
Presentation Outline Brief introduction on Coterie Network Longest Common Subsequence on
Coterie Network Exact match
Parallel SM algorithm and its Limitation Longest Common Subsequence on Coterie
Network Approximate match
Summary and Future work
![Page 40: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/40.jpg)
Steps of LCS on Coterie Network
We assume, initially all the internal switch of the PEs are open
Let the Text string T=T(1)T(2)…T(n) been fed into row 1 of the coterie network
PE(0,j) stores T(j), where 0<=j<=n, as shown
This steps take unit time.
![Page 41: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/41.jpg)
LCS Algorithm on Coterie Network
A G A C T G A G G T A
![Page 42: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/42.jpg)
PE’s form Coterie PE’s with index value j as a constant forms
m coteries as shown Within each coteries operation Multicast is
performed simultaneously, a constant time operation
The following slides shown the content of each PE after above operation
![Page 43: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/43.jpg)
LCS Algorithm on Coterie Network
A G A C T G A G G T A
![Page 44: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/44.jpg)
LCS Algorithm on Coterie Network
A G A C T G A G G T A
A G A C T G A G G T A
A G A C T G A G G T A
A G A C T G A G G T A
A G A C T G A G G T A
A G A C T G A G G T A
Content of each PE’s after MULTICAST operation
![Page 45: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/45.jpg)
LCS Algorithm on Coterie Network Let the Pattern string P=P(1)P(2)…P(m)
been fed into column 1 of the coterie network
PE(i,0) stores P(j), where 0<=i<=m, as shown
This steps take unit time
![Page 46: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/46.jpg)
LCS Algorithm on Coterie Network
A
C
T
G
A
G
![Page 47: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/47.jpg)
PE’s form Coteries PE’s with index value i as a constant forms
n coteries as shown Within each coteries operation Multicast is
performed simultaneously, a constant time operation
The following slides show the content of each PE after above operation
![Page 48: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/48.jpg)
LCS Algorithm on Coterie Network
A
C
T
G
A
G
![Page 49: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/49.jpg)
LCS Algorithm on Coterie Network
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
A
C
T
G
A
G
Content of each PE’s after MULTICAST operation
![Page 50: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/50.jpg)
LCS Algorithm on Coterie Network After this step each PE’s with index [i,j]
have P[i] T[j]. Now each PE’s compares the content held
in his internal Register. It set the value 1 if they are equal else 0 in
its Control register R. This step takes unit time. Next figure shows the value after this
operation
![Page 51: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/51.jpg)
LCS Algorithm on Coterie Network
1 0 1 0 0
00
0000
0 000001
100010
1
0
0
1
11010001
0000
00010
0
01
10001 1
0
0
1
0 0
001
0 1
0
0
A G A C T G A G G T A
A
C
T
G
A
G
![Page 52: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/52.jpg)
Parallel SM on Mesh Network A Parallel SM algorithm With VLDC proposed by
K.L. Chung in 1995 Uses the Mesh-Connected Computer with
reconfigurable buses system. Runs in O(1) time Pattern of size m , Text of size n uses, O(nm)
PE’s. Works only for particular cases, as seen from the
example. Text : NNOLONGOLUNGU Pattern : OL#NG#U
![Page 53: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/53.jpg)
Parallel SM on Mesh Network
0
##
0000
# ######
1
0
0
#
00010000
0000
#####
0
##
00000 0
#
0
1
# #
001
# #
1
0
##
11
0
0
#
0
#
0
#
1
#
0
0
10 0 010001 0 000 0
1 0 1 0 0000100 0 0
N N O L O L N G O L U N G U
O
#
N
G
#
U
L
Inject unique token
![Page 54: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/54.jpg)
LCS Algorithm on Coterie Network PE’s having value 1 in its Control register R, form
Coterie 1 while PE’s having value 0 form Coteries 0
This step takes unit time Now expect the PE’s with index[0,j], where
0<=j<=n in both the coteries, each PE with value 0 in its special register closes the N-E switch.
PE’s with value 1 in its Control Register R closes the W-S switch as shown
Both the steps takes unit time
![Page 55: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/55.jpg)
LCS Algorithm on Coterie Network
1 0 1 0 0
00
0000
0 000001
100010
1
0
0
1
11010001
0000
00010
0
01
10001 1
0
0
1
0 0
001
0 1
0
0
A G A C T G A G G T A
A
C
T
G
A
G
Inject unique token
![Page 56: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/56.jpg)
LCS Algorithm on Coterie Network We try to refine the previous Parallel SM
with VLDC algorithm to support approximate matching
We make use of tokens to demonstrate how we can get lcs
The next example demonstrate this problem For the string:
Text :AGACTGAGGTA Pattern : ACTAAG
![Page 57: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/57.jpg)
Presentation Outline Brief introduction on Coterie Network Longest Common Subsequence on Coterie
Network Exact match
Parallel SM algorithm and its Limitation Longest Common Subsequence on Coterie
Network Approximate match
Summary and Future work
![Page 58: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/58.jpg)
LCS Algorithm on Coterie Network
1 0 1 0 0
00
0000
0 000001
100010
1
1
0
1
00100010
0000
00010
0
01
10001 1
0
0
1
0 0
001
0 1
1
0
A G A C T G A G G T A
A
C
T
A
A
G
Inject unique token
![Page 59: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/59.jpg)
LCS Algorithm on Coterie Network
0 0 0 0 0
01
1000
1 001000
000000
0
1
0
0
00100010
0000
10001
0
10
10001 1
1
0
0
0 1
001
0 0
1
0
A G A C T G A G G T A
G
A
C
A
G
G
Inject unique token
![Page 60: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/60.jpg)
Trial and Error method In this method, we explicitly close the W-S
switch based on some condition We inject unique token symbols as shown
in the next slide Where this two symbol intersect within a
PE’s, we close the W-S switch as shown, Thus we get a path from first row to the
last row as shown
![Page 61: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/61.jpg)
LCS Algorithm on Coterie Network
1 0 1 0 0
00
0000
0 000001
100010
1
1
0
1
00100010
0000
00010
0
01
10001 1
0
0
1
0 0
001
0 1
1
0
A G A C T G A G G T A
A
C
T
A
A
G
Inject unique token
![Page 62: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/62.jpg)
LCS Algorithm on Coterie Network
0 1 0 0 0
01
1000
1 001000
001101
0
1
0
0
00100010
0000
10001
0
10
10001 1
1
0
0
0 1
001
0 0
1
0
A G A C T G A G G T A
G
A
C
A
G
G
Inject unique token
![Page 63: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/63.jpg)
Presentation Outline Brief introduction on Coterie Network Longest Common Subsequence on Coterie
Network Exact match
Parallel SM algorithm and its Limitation Longest Common Subsequence on Coterie
Network Approximate match
Summary and Future work
![Page 64: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/64.jpg)
Summary and Future work
Summary:
In this thesis we have presented two variation of the lcs algorithm
We have used a new network for this problem Constant time algorithm for exact match Approximate algorithm depends upon the
diameter of the network
![Page 65: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/65.jpg)
Summary and Future work Future Work:
Optimize the algorithm for Approximate match Implementing the algorithm on FPGA’s model Incorporating the Don’t Care Symbol Extend the idea to support sequence alignment Conserve memory by using encoding scheme
Use two bits to represent four bases of DNA Using this idea, we save 75% of space/memory
We can use Virtual simulation of PEs, in case we ran out of PEs
![Page 66: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/66.jpg)
Acknowledgements Professor Walker Professor Baker Committee members for their time Kevin Schaffer, Hong Wang, Shannon
Steinfadt
![Page 67: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/67.jpg)
THANK YOU
![Page 68: Virdi Sabegh Singh (Advisor Dr. Robert A. Walker) Computer Science Department Kent State University Longest Common Subsequence Algorithm on ASC Processors](https://reader038.vdocument.in/reader038/viewer/2022103123/56649d545503460f94a3181e/html5/thumbnails/68.jpg)
Questions….