![Page 1: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/1.jpg)
Domain Specific Computing in Tightly-Coupled Heterogeneous SystemsAnthony CabreraPhD Dissertation DefenseDepartment of Computer Science and EngineeringWashington University in St. LouisJuly 22, 2020
![Page 2: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/2.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
It’s the end of Moore’s Law as we know it
2KM Bresniker et al., Computer ‘15
![Page 3: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/3.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Queue Heterogeneity!
3
Summit Supercomputer @ Oak Ridge National Lab6X NVidia V100 GPUs
![Page 4: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/4.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Hardware Specialization Spectrum
More specialized
ASIC CPU
What about this space?
4
Less specialized
![Page 5: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/5.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
The Path Forward
5
Don’t try to build a general purpose processor that does everything well; build a processor that builds a few tasks incredibly well, and figure out how to build a heterogeneous architecture using those techniques.
David Patterson and John Hennessy
ACM A.M. Turing Award Lecture, 2017
![Page 6: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/6.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Our VisionEnable the paradigm shift towards domain specific computing by identifying application domains and architecting performant domain-specific hardware.
6
![Page 7: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/7.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
7
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 8: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/8.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
8
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 9: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/9.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
9
How do you identify a domain?
![Page 10: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/10.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
How do you identify a domain?
10
QualitativelyCreate the Data Integration Benchmark Suite
QuantitativelyCharacterize workload
Cabrera et al. DIBS: A Data Integration Benchmark Suite. ICPE `18
![Page 11: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/11.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Data IntegrationParsing/Cleansing
Transformation
Aggregation
11
>Some Sequence of Interest...agcaagacttcatctcaaaaaaaaaaaaaaaGCTGCANATTTattattattattattagtttatttatttatttttttgagacagagtctcgttctgtcgcccaggctggagtgcggtggcgtgatcttggctcattgcaacctccacctcccgggttcaagtgattctcctgcctcagcctcccgagtagctgggactacaggcgtatgccaccatgcctggctaattttttgtacttttagtagagacAgagtttcacggtgttagccaggctggtcttgatctcctgacctcgtgat...
Account for
unknown bases
Convert to 2bit format
Pack into bytes
Count total
number of bases
Ready for downstream processing
![Page 12: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/12.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
The Preprocessing Pain PointBFS on Twitter Data
12Malicevic, Lepers, Zwaenepoel, USENIX ‘17
![Page 13: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/13.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Characterization ConclusionsQuantitative Characterization
Consistency in Locality
Prevalence of Data Movement
Use this to inform domain specific hardware
13
![Page 14: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/14.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
14
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 15: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/15.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
15
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 16: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/16.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
How about FPGAs as our platform?
16
![Page 17: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/17.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Wait, what’s an FPGA, anyway?
17
![Page 18: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/18.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
FPGA attached via PCIe card
18
![Page 19: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/19.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Intel HARPv2 (left) vs. PCIe card (right)
19
![Page 20: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/20.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
OpenCL to the Rescue!
20
Hardware Compiler
![Page 21: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/21.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
21
How portable are OpenCL FPGA kernels to Intel HARPv2?
![Page 22: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/22.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Results
22
SVP = Stratix V, PCIeHARP= Arria 10, HARP
Zohouri et al., SC`18
Cabrera et al., IWOCL`19
Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19
Version FPGA Speedup
![Page 23: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/23.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Results
Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19 23
Version FPGA Speedup
1SVP 1.00
HARP 0.74
2SVP 0.05
HARP 0.01
3SVP 2.48
HARP 3.90
4SVP 3.55
HARP 3.24
5SVP 38.22
HARP 34.27
SVP = Stratix V, PCIeHARP= Arria 10, HARP
Zohouri et al., SC`18
Cabrera et al., IWOCL`19
![Page 24: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/24.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Results
Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19 24
Version FPGA Speedup
1SVP 1.00
HARP 0.74
2SVP 0.05
HARP 0.01
3SVP 2.48
HARP 3.90
4SVP 3.55
HARP 3.24
5SVP 38.22
HARP 34.27
SVP = Stratix V, PCIeHARP= Arria 10, HARP
Zohouri et al., SC`18
Cabrera et al., IWOCL`19
![Page 25: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/25.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Result of Exploiting Shared Virtual Memory
25Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19
![Page 26: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/26.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Results
Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19 26
Version FPGA Speedup
5SVP 38.22
HARP 34.27
SVP = Stratix V, PCIeHARP= Arria 10, HARP
Zohouri et al., SC`18
Cabrera et al., IWOCL`19
![Page 27: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/27.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
27
How do you find the most performant knob configuration?
![Page 28: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/28.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Hardware Design Parameter Sweep
28Cabrera and Chamberlain. “Exploring Portability and Performance of OpenCL FPGA Kernels...” IWOCL `19
![Page 29: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/29.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
29
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 30: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/30.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Outline
30
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 31: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/31.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
31
How do you design performant hardware for a specific domain?
![Page 32: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/32.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
32
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
![Page 33: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/33.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
33
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
Use insights fromdata integration domain
characterization
![Page 34: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/34.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
34
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
Use insights fromdata integration domain
characterization
Leverage results from HARPv2 portability and performance evaluation
![Page 35: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/35.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
35
Domain Specific Computing
Domain Identification
Hardware Platform Evaluation
Architecting Domain Specific Hardware
Design a data-driven method to guide HW
design choices
Use insights fromdata integration domain
characterization
Leverage results from HARPv2 portability and performance evaluation
![Page 36: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/36.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Multi-spectral Reuse DistanceDevelop a tool to inform the relationship between spatial and temporal locality
36Cabrera et al. Multi-spectral Reuse Distance: Divining Spatial Information from Temporal Data. HPEC `19
![Page 37: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/37.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Method Overview
37
CodeRegions of
Interest
InstructionTrace
InstructionTrace
Reuse Distance @64B, 4KiB, 2MiB
Granularities Earth Mover’s Distance
![Page 38: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/38.jpg)
Quantifying Spatial Locality with EMD
38
Better Spatial Locality
![Page 39: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/39.jpg)
EMD for SPEC2006 Applications
39
![Page 40: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/40.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Sub-Domain Creation
40
DIBSApplications
Multi-spectralReuse Distance
![Page 41: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/41.jpg)
DIBS Multi-spectral Reuse Distance Results
41
![Page 42: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/42.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Sub-Domain Creation
42
DIBSApplications
k-means clustering
Multi-spectralReuse Distance
![Page 43: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/43.jpg)
Clustering Applications with k-means
43
“Wide” Implementation
“Deep” Implementation
![Page 44: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/44.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Width vs. DepthThe two OpenCL FPGA Design Paradigms
44
Deep
Wid
e
![Page 45: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/45.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
k-means ClusteringThe two OpenCL FPGA Design Paradigms
45
![Page 46: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/46.jpg)
DIBS Subset
46
Application Clustering Prediction
ebcdic_txt Wide
idx_tiff Deep
fix_float Wide
edgelist_csr Deep
2bit_fa Wide
fa_2bit Deep
![Page 47: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/47.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Let’s Talk OpenCL Hardware DesignWide Kernel Design
Deep Kernel Design
47
![Page 48: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/48.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
48
__attribute__(...)__kernel void e2a( __global const uchar* restrict src,
__global uchar* restrict dst){
unsigned char e2a_lut[256] = { … };unsigned int i = get_global_id(0);uchar orig_char = src[i];uchar xformd_char;xformd_char = e2a_lut[orig_char];dst[i] = xformd_char;
}
Case Study: ebcdic_txt Wide Kernel
1) Kernel Body
2) Kernel Arguments
3) Width Knobs
![Page 49: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/49.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
__kernel void e2a( __global const uchar* restrict src,__global uchar* restrict dst)
{unsigned char e2a_lut[256] = { … };unsigned int i = get_global_id(0);uchar orig_char = src[i];uchar xformd_char;xformd_char = e2a_lut[orig_char];dst[i] = xformd_char;
}
49
__kernel void e2a( __global const uchar* restrict src,__global uchar* restrict dst,ulong total_work_items)
{unsigned char e2a_lut[256] = { … };
if (i < total_work_items) {unsigned int i = get_global_id(0);uchar orig_char = src[i];uchar xformd_char;xformd_char = e2a_lut[orig_char];dst[i] = xformd_char;
}}
What About the “Loose Ends”?
![Page 50: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/50.jpg)
Unbounded (left) vs. Bounded (right)4 replicates
50
Choose unbounded implementation and make the problem fit the hardware!
![Page 51: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/51.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
51
__attribute__(...)__kernel void e2a( __global const uchar* restrict src,
__global uchar* restrict dst){
unsigned char e2a_lut[256] = { … };unsigned int i = get_global_id(0);uchar orig_char = src[i];uchar xformd_char;xformd_char = e2a_lut[orig_char];dst[i] = xformd_char;
}
Case Study: ebcdic_txt Wide Kernel3) Width Knobs
![Page 52: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/52.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
52
__attribute__((num_compute_units(NUMCOMPUNITS)))
ebcdic_txt Coarse-Grain Width Knobs
__attribute__((reqd_work_group_size(WGSIZE,1,1)))__attribute__((num_simd_work_items(NUMSIMD)))
NUMCOMPUNITS = # of replicated compute units
WGSIZE = work-group size of compute unit
NUMSIMD = # of times data path is replicated within a compute unit
![Page 53: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/53.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
ebcdic_txt Width Design Space
WGSIZE = {128, 256, 512, 1024}
NUMCOMPUTEUNITS = {1, 2, 4, 8}
NUMSIMD = {1, 2, 4, 8, 16}
53
![Page 54: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/54.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
54
__kernel void e2a( __global const uchar* restrict src,__global uchar* restrict dst,ulong num_elts)
{unsigned char e2a_lut[256] = { … };unsigned int i;#pragma unroll UNROLL for (i = 0; i < num_elts; ++i) {
uchar xformd_char;xformd_char = e2a_lut[orig_char];dst[i] = xformd_char;
}}
Case Study: ebcdic_txt Deep Kernel
UNROLL = # of times to unroll the loop
Loop termination condition
![Page 55: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/55.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
ebcdic_txt Deep Design Space
UNROLL = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024}
55
![Page 56: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/56.jpg)
ebcdic_txt Width vs. Depth Results
56
Wide Result Deep Result
5.49 GB/s
0.26 GB/s
![Page 57: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/57.jpg)
Application Clustering Prediction Correct?
ebcdic_txt Wide Yes!
idx_tiff Deep
fix_float Wide
edgelist_csr Deep
2bit_fa Wide
fa_2bit Deep
Application Clustering Prediction Correct?
ebcdic_txt Wide Yes!
idx_tiff Deep Yes!
fix_float Wide Yes!
edgelist_csr Deep Yes!
2bit_fa Wide Yes!
fa_2bit Deep Yes!
Prediction Results:
57
![Page 58: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/58.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
CPU vs Width (MWI) vs SWI (Depth) Results
58
![Page 59: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/59.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Conclusion
59
We have presented our work towards designing domain specific hardware for a Post-Moore world. We do that through qualitative and quantitative domain identification, evaluating future compute technologies for domain specific computing, and architecting hardware that exploits the target domain and hardware platform.
![Page 60: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/60.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
Future WorkIntelligent Design Space Search
HLS Hardware Compiler Development
What/Where to Accelerate
A New Domain
60
![Page 61: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/61.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
61
We have presented our work towards designing domain specific hardware for a Post-Moore world. We do that through qualitative and quantitative domain identification, evaluating future compute technologies for domain specific computing, and architecting hardware that exploits the target domain and hardware platform.
Thanks!
![Page 62: July 22, 2020 Domain Specific Computing in€¦ · Hardware Specialization Spectrum More specialized ASIC CPU What about this space? 4 Less specialized. Allstate Candidate Presentation](https://reader033.vdocument.in/reader033/viewer/2022060520/604eba6464bbea7e5b1e146a/html5/thumbnails/62.jpg)
Allstate Candidate Presentation - November 22, 2017 - Northbrook, IL
62