Presentation is loading. Please wait.

Presentation is loading. Please wait.

PACL and ASC Processor Research Overview

Similar presentations


Presentation on theme: "PACL and ASC Processor Research Overview"— Presentation transcript:

1 PACL and ASC Processor Research Overview
Research Overview Parallel and Associative Computing Group and the ASC Processor Group Kent State University Dr. Johnnie Baker, Dr. Robert Walker, and Dr. Jerry Potter (Emeritus), Michael Scherger, Wittaya Chantamas, Hong Wang Sabegh Singh Virdi, Shannon Steinfadt, Kevin Schaffer Department of Computer Science Kent State University Kent, Ohio November 18, 2005 PACL and ASC Processor Research Overview

2 PACL and ASC Processor Research Overview
Presentation Outline Associative and Parallel Algorithms and Applications Design of an Associative Parallel Database Server – Michael Scherger Longest Common Subsequence Algorithm on ASC Processors Using a Coterie Network – Sabegh Singh Virdi Shannon’s Presentation Title Goes Here… Multithreaded ASC – Kevin Schaffer November 18, 2005 PACL and ASC Processor Research Overview

3 MASC Parallel Database Server
November 18, 2005 PACL and ASC Processor Research Overview

4 MASC Parallel Database Server
Database is resident in parallel array memory. Parallel memory map is similar to table layout. Size of parallel array is fixed during execution. Only used physical PEs. PE memory size is fixed. Table records are placed in the array memory in “folds”. Parallel array memory is allocated dynamically. Coalescing parallel memory manager. Tables will also have a set of parallel control bits. November 18, 2005 PACL and ASC Processor Research Overview

5 MASC Parallel Database Server
Table A1 Table A2 Database Table List Fold List Field List Light shaded regions are empty records for table A Dark shaded regions are occupied records for table A Stores relative offsets of table fields Stores base memory address of each fold November 18, 2005 PACL and ASC Processor Research Overview

6 Multiple Tables and Folds
Table A1 Table B1 Table B2 Free Parallel Memory November 18, 2005 PACL and ASC Processor Research Overview

7 Parallel Database Operations
SQL INSERT Algorithm Perform associative search on BI field to find first/next cell for insert. If none found, create new fold. Copy data from sequential to parallel memory. O(1)…(O(#folds)) Uses broadcast / reduction network. Table A1 Table A2 November 18, 2005 PACL and ASC Processor Research Overview

8 Parallel Database Operations
SQL DELETE Algorithm Perform associative search on WHERE clause. (Flag responders) Reset BI field where responder flag is set true. Data remains in memory. If all PE records are idle, CPMM marks block as free. O(1)…(O(#folds)) Table A1 Table A2 November 18, 2005 PACL and ASC Processor Research Overview

9 PACL and ASC Processor Research Overview
Future Work MASC Parallel Database Server Change the parallel memory manager to support multiple instruction streams November 18, 2005 PACL and ASC Processor Research Overview

10 PACL and ASC Processor Research Overview
Longest Common Subsequence Algorithm on ASC Processors using Coterie Network Sabegh Singh Virdi ASC Processor Group Computer Science Department Kent State University November 18, 2005 PACL and ASC Processor Research Overview

11 PACL and ASC Processor Research Overview
Presentation Outline Introduction to String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

12 PACL and ASC Processor Research Overview
String Matching One of the most fundamental operation in computing. Comparing two linear arrays of character Application in bioinformatics, searching genetic databases String involved are how ever enormous, efficient string processing is therefore a requirement November 18, 2005 PACL and ASC Processor Research Overview

13 String Matching Variations
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 November 18, 2005 PACL and ASC Processor Research Overview

14 PACL and ASC Processor Research Overview
Presentation Outline String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

15 Role of LCS in Molecular biology
DNA sequences (genes) can be represented as sequences of four letters A, C, G, and T 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 November 18, 2005 PACL and ASC Processor Research Overview

16 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 November 18, 2005 PACL and ASC Processor Research Overview

17 Overview of 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); November 18, 2005 PACL and ASC Processor Research Overview

18 Overview of LCS Algorithm
Actually this time does not depend on the sequences u and v themselves but only on their lengths The bottleneck in efficient parallelization of LCS problem are the calculating the value of diagonal elements, as shown As seen, the value of {i,j} depend upon the previous element {i-1,j-1}, when a match is found November 18, 2005 PACL and ASC Processor Research Overview

19 Overview of LCS Algorithm
Possibility of more then one LCS Associate some parameters Take account into gap penalties The Smith-Waterman Algorithm uses the same concept that of LCS algorithm, but gives us the optimal result November 18, 2005 PACL and ASC Processor Research Overview

20 Overview of LCS Algorithm
A G A C T G A G G T A A C T G 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 1 1 1 2 3 3 3 3 3 3 3 1 2 2 2 3 4 4 4 4 4 4 1 2 3 3 3 4 5 5 5 5 5 1 2 3 3 3 4 5 6 6 6 6 November 18, 2005 PACL and ASC Processor Research Overview

21 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 Properties significantly different from the usual mesh November 18, 2005 PACL and ASC Processor Research Overview

22 PACL and ASC Processor Research Overview
Presentation Outline Introduction to String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

23 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 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 November 18, 2005 PACL and ASC Processor Research Overview

24 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) November 18, 2005 PACL and ASC Processor Research Overview

25 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 N NE NW V E W H WS ES S : Switch November 18, 2005 PACL and ASC Processor Research Overview

26 PACL and ASC Processor Research Overview
Presentation Outline Introduction to String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

27 LCS Algorithm on Coterie Network
A G A C T G A G G T A November 18, 2005 PACL and ASC Processor Research Overview

28 LCS Algorithm on Coterie Network
A G A C T G A G G T A November 18, 2005 PACL and ASC Processor Research Overview

29 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 November 18, 2005 PACL and ASC Processor Research Overview Content of each PE’s after MULTICAST operation

30 LCS Algorithm on Coterie Network
November 18, 2005 PACL and ASC Processor Research Overview

31 LCS Algorithm on Coterie Network
November 18, 2005 PACL and ASC Processor Research Overview

32 LCS Algorithm on Coterie Network
November 18, 2005 PACL and ASC Processor Research Overview Content of each PE’s after MULTICAST operation

33 LCS Algorithm on Coterie Network
A G A C T G A G G T A A C T G 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 November 18, 2005 PACL and ASC Processor Research Overview

34 LCS Algorithm on Coterie Network
A G A C T G A G G T A 1 1 1 1 A C T G 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 November 18, 2005 PACL and ASC Processor Research Overview Inject unique token

35 LCS Algorithm on Coterie Network
We try to refine the Exact Match algorithm to support approximate matching We make use of tokens The next example demonstrate this problem For the string: Text :AGACTGAGGTA Pattern : ACTAAG November 18, 2005 PACL and ASC Processor Research Overview

36 PACL and ASC Processor Research Overview
Presentation Outline Introduction to String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

37 LCS Algorithm on Coterie Network
A G A C T G A G G T A 1 1 1 1 A C T G 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 November 18, 2005 PACL and ASC Processor Research Overview Inject unique token

38 PACL and ASC Processor Research Overview
Token method In this method, we explicitly close the W-S switch based on some condition Inject unique token symbols Where the H and V switch is set within a PE’s, we close the W-S switch as shown As the token traverse, keep track of gaps and match Resulting a path from first row to the last row Value in CR gives the length of LCS and in SR number of gaps occurred, first row of PE November 18, 2005 PACL and ASC Processor Research Overview

39 LCS Algorithm on Coterie Network
A G A C T G A G G T A 1 1 1 1 A C T G 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 November 18, 2005 PACL and ASC Processor Research Overview Inject unique token

40 PACL and ASC Processor Research Overview
Presentation Outline Introduction to String matching and its variations Role of LCS in Molecular Biology Overview of LCS Brief introduction on Coterie Network Longest Common Subsequence on Coterie Network Exact match Approximate match Summary and Future work November 18, 2005 PACL and ASC Processor Research Overview

41 Summary and Future work
We have presented two variation of the lcs algorithm We have Explored a new network for this problem Constant time algorithm for Exact match Approximate algorithm depends upon the diameter of the network November 18, 2005 PACL and ASC Processor Research Overview

42 Summary and 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 We can use Virtual simulation of PEs, in case we ran out of PEs November 18, 2005 PACL and ASC Processor Research Overview

43 PACL and ASC Processor Research Overview
Acknowledgements Professor Walker Professor Baker Professor Weems Professor Herbordt Professor Piontkivska Kevin Schaffer, Hong Wang, Shannon Steinfadt, Jalpesh Chitalia, and Michael Scherger November 18, 2005 PACL and ASC Processor Research Overview

44 PACL and ASC Processor Research Overview
THANK YOU November 18, 2005 PACL and ASC Processor Research Overview

45 PACL and ASC Processor Research Overview
Multithreaded ASC Kevin Schaffer ASC Processor Group Computer Science Department Kent State University November 18, 2005 PACL and ASC Processor Research Overview

46 PACL and ASC Processor Research Overview
Motivation As we scale up the number of PEs, broadcast and reduction operations become more expensive due to wire delays Deeper pipelines can absorb wire delays, but the cost is higher operational latencies It becomes more difficult to keep the pipeline fully utilized, especially in associative programs Maximum/minimum search Branch if any responders Possible solution: use instructions from multiple threads to keep the pipeline full November 18, 2005 PACL and ASC Processor Research Overview

47 Execution Time vs. Latency
November 18, 2005 PACL and ASC Processor Research Overview

48 PACL and ASC Processor Research Overview
Throughput vs. Latency November 18, 2005 PACL and ASC Processor Research Overview

49 Designing a SIMD Pipeline
Separate scalar and parallel pipelines Parallel pipeline includes extra stages to handle broadcast and reduction delays Allows scalar and parallel instructions to complete out of order with respect to each other November 18, 2005 PACL and ASC Processor Research Overview

50 PACL and ASC Processor Research Overview
Broadcast Dependency Due to the shorter scalar pipeline, forwarding can eliminate stalls caused by broadcast dependencies A longer scalar pipeline would have caused a stall November 18, 2005 PACL and ASC Processor Research Overview

51 PACL and ASC Processor Research Overview
Reduction Dependency No amount of forwarding hardware can eliminate stalls due to reduction dependencies Must use instructions from other threads to fill in the unused execution slots November 18, 2005 PACL and ASC Processor Research Overview

52 PACL and ASC Processor Research Overview
Instruction Issue Use instructions from multiple threads to keep the pipeline fully utilized Instructions within a thread are issued in order Scalar and parallel instruction may complete out of order, so we check for hazards before issue Fine-grain multithreading interleaves threads at the instruction level For now, at most one instruction issues each cycle With separate scalar and parallel pipelines, we could issue one instruction to each November 18, 2005 PACL and ASC Processor Research Overview

53 PACL and ASC Processor Research Overview
Working with Threads Management Fork and join instructions start and end threads Threads are allocated dynamically by the hardware Communication Send and receive instructions can transmit small amounts of data quickly Used to synchronize register contents between parent and child threads Can use shared memory for large data November 18, 2005 PACL and ASC Processor Research Overview

54 Multithreaded ASC and MASC
All processors execute the same instruction at the same time in lock step Each thread can use all the processors Multiple threads improve pipeline utilization, but not processor utilization Multithreading and MASC can be used together in order to improve both November 18, 2005 PACL and ASC Processor Research Overview


Download ppt "PACL and ASC Processor Research Overview"

Similar presentations


Ads by Google