Download presentation
Presentation is loading. Please wait.
Published byKathlyn Walton Modified over 7 years ago
1
The Micron Automata Processor and Applications in HEP
Michael Wang Fermilab 8th INFIERI Workshop 17-21, October, 2016, Fermilab, Batavia, IL USA
2
Introduction Motivation Outline of Talk
Trend in HEP experiments, towards more complex event topologies and higher particle densities, makes fundamental task of pattern recognition in HEP more challenging. Commodity CPU/GPUs (von-Neumann based architectures) becoming less effective. ASIC and FPGA solutions exist: they work and are effective for very demanding real-time, online applications. But they entail some risk and significant resources to develop and may not be appropriate for many applications. Ideal to have an off-the-shelf solution which, even if it cannot completely replace ASIC/FPGAs, can at least bridge the gap between them and commodity processors. Try not to reinvent the wheel by looking towards industry for fresh, new ideas: novel architectures driven by the needs of the lucrative internet search industry. In this talk, we discuss Micron’s Automata Processor (AP) as a possible solution. Outline of Talk What is the Automata Processor? Proof-of-concept track recognition application in HEP collider environment. Brief comparisons with other architectures. Other pattern recognition applications in HEP. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
3
What is the Micron Automata Processor?
Hardware realization of a Non-deterministic Finite Automata (NFA) Interesting adaptation of conventional SDRAM architecture 8-bit input generates the “row address” Routing matrix Provides the “column address” Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
4
Actual Automata Hardware
Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
5
From regular expressions to particle trajectories
An obvious application of the Automata Processor is in performing high-speed searches on input data streams for regular expression matching or finding words in a dictionary. r t However, the symbols need not be limited to characters in a string. For example, they could be replaced by wire, strip, or pixel addresses in a HEP tracking detector. r In this example, the input string “susy” is matched to a dictionary entry in exactly 4 symbol cycles no matter how big the dictionary. a g r a s u s “ s u s y ” s symbol A - symbol B - symbol C - symbol D - hit address 1 hit address 2 hit address 3 hit address 4 y v h i t Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
6
Basic operating principle of an automata track finder
Addresses of detector “hits” read out by layer: Layer 1 Layer 2 Layer 3 Layer 4 15,17,23,25,31,32,35,36,41,45 {15} {25} {35} {45} R L1 L2 L3 L4 The idea is to create a pattern bank containing every possible track pattern. Each pattern is represented by an Automata network like the one showed above (with latch attributes enabled). Detector hits are fed into the AP sequentially by layer and all hit combinations with matching patterns in the bank are found. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
7
Proof-of-principle application with “toy” CMS Detector
R-z Proof of principle application: Implement a hypothetical pixel detector based electron track confirmation trigger on a “toy” CMS detector Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
8
Simulated events for the “toy” CMS detector
Single Z→ee event Z→ee event with 50 pileups Pythia Z to ee signal, pileups using Pythia minimum bias 4 samples with same signal events but overlaid with 50, 80, 110 & 140 PU’s Particles tracked through 4T solenoidal field No stochastic processes like MSCT and energy loss Charged tracks produce single pixel hit upon layer traversal at 100% efficiency Unstable particles decayed randomly into appropriate channel based on B.R. and with exponential decay length distributions based on c-tau Photons converted into ZOA pairs at pixel detector layers Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
9
Defining the alphabet of our dictionary: hit addreses
3D track patterns possible in principle but impractical due to number of patterns Instead, decompose into R-phi and R-Z views R-Phi view: projection on a plane Perpendicular to cylindrical axis (coordinates: radius R & azimuthal angle Phi) R-Z view: a little like looking from side of cylinder (coordinates: radius R & Z Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
10
Defining Sectors and Roads for Pattern Banks
Divided R-Phi view into 72 overlapping sectors. R-Z view: divide Layer 1 into 32 sections in z and Layers 2, 3, and 4 into 16 sections in z Find all possible combinations of 4 sections forming “roads” pointing back to luminous region. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
11
Size of Pattern Banks R-phi view: R-z view:
72 banks with 1163 patterns each R-z view: 244 banks with ~4662 patterns each In principle, for an ideal detector like our toy detector, number of patterns can be reduced by using rotational symmetry in the R-phi view and mirror symmetry in the R-z view Also using relatively fine-grained patterns in this proof-of-principle. Patterns can be reduced by using coarser patterns. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
12
Basic “automaton” for track finder requiring all 4 hits
Energy range constraint on calorimeter cluster Latches to enable appropriate half of 16-bit STE pair on odd or even cycle STE pairs representing 16-bit hit addresses in the 4 layers EM cluster coordinate (phi or eta depending on view) Reporting STE Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
13
AP Workbench Simulation
This automata network is slightly different from the one on the previous slide in that it allows up to one missing “hit” out of the 4 that define a particle track. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
14
Testing the track confirmation trigger on the toy detector
Point EM clusters above threshold back to primary interaction vertex (assumed known) and readout hits in narrow window (region-of-interest) around possible track direction Select only the two pattern banks corresponding to the region-of-interest Feed hits into the automata chips (emulator) containing the banks for each view Find at least one pair of matches from both views occurring on same symbol cycle Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
15
Results for Electron identification and photon rejection
Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
16
Processing time on automata processor
Additional step, in external logic, needed to find coincident matches in both views. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
17
Processing time on x86 CPU
CPU Cycles vs # of Pileups Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
18
Processing Time on Automata Processor vs x86 CPU
Used the simulated sample with 140 pileups Micron Automata Processor at 133 MHz 3.25 us us external processing time = 3.62 μs Intel i7, 5th generation at 3.3 GHz Single core: 32.1 μs OpenMP on 6 cores: 17.5 μs Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
19
Comparison with CAM-based FPGA implementations
We look at the FPGA-based PRM (Pattern Recognition Module) developed at Fermilab as a demonstrator for the VIPRAM ASIC and for optimizing its design (Ted Liu et al.) PRM firmware has been tested extensively and its behavior, down to clock-cycles, is deterministic and well understood. Possible to get very good idea of its performance relative to Micron AP without actually running it on the same data. With knowledge of its architecture and characteristics, we calculated the number of PRM cycles it would take to match pixel tracks to EM clusters: on the same 1K event sample with 140PU used to test the Micron AP using same definition of ROI associated with each EM cluster to provide same set of pixel hits as input Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
20
Calculate timing from the instant the first pixel hit is fed into the
PRM Block Diagram Calculate timing from the instant the first pixel hit is fed into the module up to instant the last “road id” is output from AM stage Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
21
PRM Timing Calculation
Incoming “local” hits Ncycles = # of hits in layer with most # of hits Lyr 1 Lyr 2 Lyr 3 Lyr 4 + 4 cycles: local to ssid conversion + 8 cycles: road Id generation + # of roads found Local to “superstrip” translation End-of-Event 4 cycles Road Id’s 8 cycles Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
22
Processing Time on FPGA-PRM
Average # hits in ROI in layer with largest number of hits: ~37.7 Average # “roads” found in ROI: ~5.66 Total number of cycles: = 55.4 cycles For 250MHz clock: 0.2 us > 10x faster than automata processor Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
23
From Track Finding to Waveform Recognition
We have shown that the Automata Processor can be used for fast track pattern recognition in a HEP tracking detector Currently looking into its use for a different class of pattern recognition – that of waveform recognition. Applications include the fast recognition, classification, and analysis of digitized waveforms from LArTPCs. Borrowing ideas from other disciplines: Since the 1970’s, various methods have been developed for the automated analysis of ECG signals in the biomedical field. One such method developed in 80’s is based on “syntactical pattern recognition” which is formulated within the framework of automata theory. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
24
Syntactical Pattern Recognition in Waveform Analysis
Idea is to decompose waveforms into structural primitives analogous to an alphabet in a formal language. For illustration, consider a highly simplified example of primitives built out of various straight line segments: Z t u b d symbol flat + slope - slope large +Δy small +Δy large -Δy small -Δy Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
25
Waveform Recognition with the Automata Processor
Z u d t b Z t b 1 R [Z] [t] [b] [^t] [^b] [^Z] Incoming data [^X]: anything but a “X” Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
26
Summary Provided an overview of the Micron Automata Processor to give you an idea of what it is and what it can do. Described a proof-of-principle application that demonstrates that the AP can be used for track pattern recognition. Compared its performance with other architectures to put in better perspective Briefly touched on other possible pattern recognition applications in HEP. The current version of the AP is not a replacement for ASIC/FPGA solutions in demanding real-time applications requiring the best possible performance. In its current form, it appears to bridge the gap between commodity processors & custom solutions for track recognition applications and is suitable for offline and perhaps even less-demanding online applications. However, as this is the first version of the AP, many improvements are coming in the next version of the chip that address some of its current shortcomings and will further enhance its pattern recognition capabilities. This is a very new & unconventional processor with unique & promising capabilities, and as awareness grows in the HEP community, more novel applications may begin to sprout. Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
27
More information More details on our proof-of-principle demonstration are described in: NIM A 832 (2016) Center for Automata Processing (CAP) at the University of Virginia has a membership program that will allow access to real hardware and collaboration with their staff on automata-based applications: Micron has been talking to CERN’s OpenLab and initial hardware may be available for testing. You can find an interesting list of AP applications in various fields at Micron’s website: Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
28
End Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
29
Automata Processor Readout Architecture
Michael Wang | 8th INFIERI Workshop - HEP Pattern Recognition with the Automata Processor Oct. 20, 2016
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.