5md00 assignment introduction - tu/eheco/courses/aca/assignments_lecture.pdf · eeg application ......
TRANSCRIPT
![Page 1: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/1.jpg)
5MD00
Assignment IntroductionLuc Waeijen
16-12-2014
![Page 2: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/2.jpg)
Contents● EEG application
– Background on EEG
– Early Seizure Detection Algorithm
– Implementation Details
● Super Scalar Assignment– Description
– Tooling (simple scalar & wattch)
● Multi Core Assignment– Description
– Tooling (sniper sim, McPat & OpenMP)
![Page 3: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/3.jpg)
3
Electroencephalography (EEG)
Lets plug some wires into a brain!!
![Page 4: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/4.jpg)
4
EEG Signals
![Page 5: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/5.jpg)
5
Uses
● Research– Determine functionality of brain
– Observe physical reaction to
various stimuli
● Clinical– Monitoring during operations
– Diagnosis and classification of epilepsy
– Prognosticate coma patients
– Test for brain damage
● Brain computer interface– Paralyzed people
– Gaming
![Page 6: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/6.jpg)
6
Uses
● Research– Determine functionality of brain
– Observe physical reaction to
various stimuli
● Clinical– Monitoring during operations
– Diagnosis and classification of epilepsy
– Prognosticate coma patients
– Test for brain damage
● Brain computer interface– Paralyzed people
– Gaming
Can even predict seizures
before they occur!
![Page 7: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/7.jpg)
7
Early Seizure Detection
![Page 8: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/8.jpg)
8
EEG devices are large and make you look like something from the
matrix!
![Page 9: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/9.jpg)
9
EEG devices are large and make you look like something from the
matrix!
Epilepsy patients cannot walk the streets like this!
![Page 10: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/10.jpg)
10
EEG devices are large and make you look like something from the
matrix!
Social Stigma
![Page 11: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/11.jpg)
11
But we are working on it!
![Page 12: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/12.jpg)
12
Mobile EEG
We are developing mobile EEG devices that can be implanted under the skin of the head.
Result is practically invisible sensors, but with severe energy constraints!
Early seizure detection has to be computed on nodes, cannot afford to transmit all data to off site processing unit
![Page 13: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/13.jpg)
13
Mobile EEG
We are developing mobile EEG devices that can be implanted under the skin of the head.
Result is practically invisible sensors, but with severe energy constraints!
Early seizure detection has to be computed on nodes, cannot afford to transmit all data to off site processing unit
This is where you guys come in!
![Page 14: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/14.jpg)
14
The Algorithm
● Analysis of EEG time signal using discrete wavelet transform over a time window (convolution of time series with a wavelet function)
● Mathematically a wavelet will correlate with the signal if the unknown signal contains information of similar frequency
● Conceptually similar to a Fourier transform (actually the Fourier transform is a special case of the wavelet transform)
![Page 15: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/15.jpg)
15
Sliding Window
![Page 16: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/16.jpg)
16
Mother Wavelet
In this algorithm we use the Mexican hat mother wavelet:
![Page 17: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/17.jpg)
17
Daughter Wavelets and Coefficients
● Mother wavelet is scaled (s) and shifted (tau) to generate daughter wavelets
● Can now calculate wavelet coefficients for different s and tau by convolution with daughter wavelet
![Page 18: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/18.jpg)
18
Normalizing and selecting Max
● Normalized Wavelet Energy
● Select index of maximum, which is used as indicator value for a given time window (that particular scale and shift dominated the window)
![Page 19: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/19.jpg)
19
Implementation Trick
● The convolution theorem states that under suitable conditions the Fourier transform of a convolution is the pointwise product of Fourier transforms
(http://en.wikipedia.org/wiki/Convolution_theorem)
● Fast Fourier Transform can be implemented pretty efficiently, let's use that instead of convolution in time domain!
![Page 20: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/20.jpg)
20
Discrete Wavelet Transform using the Fast Fourier Transform (FFT)
● Fourier-transformation input signal y(t) with FFT● Generate Daughter Wavelet for chosen scaling factor s
and FFT this wavelet● Multiply FFT'd input and daughter wavelet (Multiplication in
frequency domain is convolution in time domain!)● Inverse FFT (iFFT) gives Wavelet Coefficients for different
shifts (tau) and chosen scaling s● Back to step 2, until all discrete scaling values s are
processed
![Page 21: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/21.jpg)
21
Input data
● EEG signal sampled at 200 Hz● Examine windows of 2 seconds● Shift window with steps of 1 second● Wavelet transform and measurements taken
from:
Non-parametric early seizure detection in an animal model of temporal lobe epilepsy - Sachin S. Talathi et al.
![Page 22: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/22.jpg)
22
Electrically induced seizures in rats
![Page 23: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/23.jpg)
23
Implementation
● You are given pure C-code● Ported from MATLAB code provided with Sachin
S. Talathi paper● Function and variable names are not always
very clear (taken directly from matlab code)● Code is functional, but not at all optimized!
![Page 24: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/24.jpg)
24
Main
Analysis
(loop overwindows)
DataLoader Utilities
ComputeWavelet
cwavelet
wavebase
FFT
InverseFFT
Generateoutput graph
Call Graph
![Page 25: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/25.jpg)
25
Main
Analysis
(loop overwindows)
DataLoader Utilities
ComputeWavelet
cwavelet
wavebase
FFT
InverseFFT
Generateoutput graph
Call Graph
Region of Interest
![Page 26: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/26.jpg)
26
Questions about the application?
![Page 27: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/27.jpg)
27
![Page 28: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/28.jpg)
28
Single Core Assignment
![Page 29: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/29.jpg)
29
Single Core Assignment
● Find the most suited super scalar architectures for the early seizure detection algorithm in terms of performance (CPI) and energy-delay-product (CPI*Energy/Cycle)*CPI.
Performance
EDP
![Page 30: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/30.jpg)
30
Tools of the Trade
● Simple Scalar– Super scalar simulator
– Designed for fast DSE at architecture level
– Used in many published papers
● Wattch– Architecture level power estimation
– Complementary to simple scalar
![Page 31: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/31.jpg)
31
![Page 32: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/32.jpg)
32
![Page 33: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/33.jpg)
33
![Page 34: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/34.jpg)
34
![Page 35: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/35.jpg)
35
![Page 36: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/36.jpg)
36
Functional
![Page 37: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/37.jpg)
37
Functional
Performance Simulation(also provides functional, but much slower)
![Page 38: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/38.jpg)
38
![Page 39: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/39.jpg)
39
![Page 40: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/40.jpg)
40
Functional
Performance Simulation
Fast, but low details Slow, but high details
![Page 41: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/41.jpg)
41
![Page 42: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/42.jpg)
42
![Page 43: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/43.jpg)
43
How to use?
● To get started, follow the steps on the website:
http://www.es.ele.tue.nl/~mwijtvliet/5MD00_SC/
● Once you can run the example, start exploring the design space!
● You can configure the processor in many ways, take a look at the tunable parameters at:
http://www.es.ele.tue.nl/~mwijtvliet/5MD00_SC/?page=parameters
https://courses.cs.washington.edu/courses/cse471/06sp/hw/simpleScalar3.0guide.pdf
![Page 44: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/44.jpg)
44
Make sure you understand all the parameters before tuning
● If there is a parameter you don't understand, check in the cheat-sheet what it stands for. If you do not know the technique/term, google it!
● There is no point in tuning parameters if you do not know what they do.
![Page 45: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/45.jpg)
45
Tunable Parameters
● Branch prediction
![Page 46: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/46.jpg)
46
![Page 47: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/47.jpg)
47
![Page 48: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/48.jpg)
48
![Page 49: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/49.jpg)
49
Approach
● In your report we want to see why you chose certain configurations. – Observe the performance
– Identify bottlenecks as good as possible
– Try to improve the bottlenecks and document in your report:
● What you observed● What you tried and why you thought it would help● The effect of the tuning (did it work? If not, why?)
![Page 50: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/50.jpg)
50
Approach
● In your report we want to see why you chose certain configurations. – Observe the performance
– Identify bottlenecks as good as possible
– Try to improve the bottlenecks and document in your report:
● What you observed● What you tried and why you thought it would help● The effect of the tuning (did it work? If not, why?)
For example sim-profile
![Page 51: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/51.jpg)
51
![Page 52: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/52.jpg)
52
Questions regarding the single core assignment?
![Page 53: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/53.jpg)
53
![Page 54: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/54.jpg)
54
Multi Core Assignment
![Page 55: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/55.jpg)
55
Multi Core Assignment
● Map the early seizure detection onto a multi core x86 platform
● Minimize Energy-Delay-Area-Product (EDAP)– Parallelize the code
– Tune the multi core platform (Memory, interconnect, number of cores)
– Optimize the given c-code (e.g. loop transformations to increase locality)
– Any other technique you can think of!
![Page 56: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/56.jpg)
56
Tools of the Trade
● Sniper Sim
![Page 57: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/57.jpg)
57
Tools of the Trade
● Sniper Sim
![Page 58: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/58.jpg)
58
Tools of the Trade
● Sniper Sim– Tool to analyze performance of multicore systems
– Cores themselves are modeled on a functional level
– Interconnect, memory and number of cores (i.e. the system level) can be configured and has performance models
● McPat– Integrated Power, Area and Timing modeling framework
– Integrates with Sniper Sim toolflow
● OpenMP– Framework to parallelize source for multicore platforms
![Page 59: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/59.jpg)
59
![Page 60: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/60.jpg)
60
![Page 61: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/61.jpg)
61
![Page 62: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/62.jpg)
62
![Page 63: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/63.jpg)
63
![Page 64: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/64.jpg)
64
![Page 65: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/65.jpg)
65
McPat
![Page 66: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/66.jpg)
66
How to Use
● Again, check the website to get started:http://www.es.ele.tue.nl/~mwijtvliet/5MD00_MC/?page=preparation
● N.B. Download the application source again, since the makefile differs from the previous assignment!
● N.B. Extract the application source in the correct directory!! Sniper Sim uses relative paths in it's Makefiles!! (see guidelines page)
● For the tunable parameters, check the sniper-manual (in particular chapters 5 & 6).
● The website also explains how to extract the energy, delay and area metrics from the tools
![Page 67: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/67.jpg)
67
Again, make sure you understand what you tune!
● Read the sniper sim manual to understand the configuration options. In general the options are a bit more high level, and probably easier to understand.
● Procedure (for report):– Profile the application, identify bottlenecks
– Try to improve the mapping/system● Document what you tried and what you were expecting
– Show the results. Did your solution work? If not, try to explain why.
● Try to obtain the minimum EDAP!
![Page 68: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/68.jpg)
68
OpenMP
![Page 69: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/69.jpg)
69
OpenMP
● N.B. OpenMP does not check (and certainly not prove) whether the specified parallelization is correct (or beneficial). When a piece of code is annotated, the compiler simply assumes that it is OK to parallelize it.
Beware of race conditions!
![Page 70: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/70.jpg)
70
Finally● Please use the forums to ask your questions!!● Use a topic title that captures your problem as
accurately as possible (i.e. not 'code not working').
● Before you ask, check if someone else had a similar issue. Perhaps the answer to your question is already there.
● Remember Google is your friend, it can typically provide answers much faster than the TAs
● If you want to talk to a TA, send us an email to make an appointment.
![Page 71: 5MD00 Assignment Introduction - TU/eheco/courses/ACA/Assignments_lecture.pdf · EEG application ... Ported from MATLAB code provided with Sachin ... – Super scalar simulator](https://reader031.vdocuments.mx/reader031/viewer/2022020302/5ad5bf487f8b9a5c638d73fb/html5/thumbnails/71.jpg)
71
Slides in this presentation were shamelessly copied from:
● http://snipersim.org/documents/2012-06-09%20Sniper%20ISCA%20Tutorial.pdf
● https://courses.cs.washington.edu/courses/cse471/06sp/hw/simpleScalar3.0guide.pdf
● http://www.simplescalar.com/docs/simple_tutorial_v2.pdf
● http://www.simplescalar.com/docs/simple_tutorial_v4.pdf