kwangil choi, hyunok oh hanyang university
DESCRIPTION
An Energy Aware Buffer Mapping Technique on Multiple Retention Time STT-MRAMs for Stream Applications. Kwangil Choi, Hyunok Oh Hanyang University. Outline. Introduction Non -volatile Memory (NVM) Synchronous dataflow (SDF) Problem Definition Answer Set Programming - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/1.jpg)
An Energy Aware Buffer Mapping Technique on Multiple Retention Time STT-MRAMs for Stream Applications
Kwangil Choi, Hyunok OhHanyang University
![Page 2: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/2.jpg)
Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)
Problem Definition Answer Set Programming Experiment Conclusion
Outline
![Page 3: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/3.jpg)
Non-Volatile Memory (NVM) Replace DRAM for main memory
Introduction
Type Phase change RAM (PRAM) Spin-transfer torque magneto resistive RAM(STT-MRAM)Ferroelectric RAM(FRAM)
Pros High densityLow static energy consumption
Cons High write energy consumptionPoor write performance
![Page 4: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/4.jpg)
STT-MRAM Cell Structure
(*MTJ : Magnetic Tunnel Junction)
current
free layertunnel oxide
fixed layer
Gate
Source Drain
Synthetic Antiferromagnetic(SyAF) structure
Bottom Electrode(substrate)
Tunnel BarrierFree Layer
Pinned Layer
Seed Layer
Capping Layer
Spacing LayerTop AF Layer
Top Electrode
Bottom AF Layer
Buffer Layer
MTJ*
![Page 5: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/5.jpg)
Reduction of Retention TimeThe reduction of the retention time contributes the cell density, leakage power, dynamic power consumption, and perfor-mance.
![Page 6: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/6.jpg)
STT-MRAMs with Different Retention Times
STT1 STT2 STT3
Cell size (F2) 20.7 22 23
Tretention 26.5μs 3.24s 4.27yr
LatR(ns) 2.065 2.118 2.158
Latw(ns) 3.373 6.415 11.447
DynR(nJ) 0.081 0.083 0.085
DynW(nJ) 0.347 0.932 1.916
Pleak(mW) 96.1 104 110
![Page 7: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/7.jpg)
System with Multiple Retention Time Memories
26.5μs
3.24s
4.27y
processor
STT1 memory
STT2 memory
STT3 memory
![Page 8: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/8.jpg)
Synchronous dataflow (SDF)◦ represents streaming applications like multimedia that
require frequent memory access◦ Node(Actor) - functional algorithm◦ Edge - communication between two actors ◦ Producing / Consuming rate
the number of produced and consumed samples◦ Rate is fixed
Application Specification
A B3 2
![Page 9: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/9.jpg)
Motivational Example
A B3 2
Schedule : ABABB
A AB B B
1ms}
Tretention= 1 ms16 refresh operations
Tretention= 4 ms no refresh operation
![Page 10: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/10.jpg)
Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)
Problem Definition Answer Set Programming Experiment Conclusion
Outline
![Page 11: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/11.jpg)
Problem Definition Input
◦ Target architecture: A system with multiple relaxed reten-tion time STT-MRAM modules. Note that the memory re-freshes memory cells containing valid data.
◦ Characteristics of STT-MRAM : retention time, read/write energy, and refresh energy.
◦ Application : An application is specified in SDF model. A schedule and the execution time of each node are given.
Goal◦ Minimization the total energy consumption on the mem-
ory system for the application. Output
◦ The mapping of buffers to STT-MRAM modules.
![Page 12: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/12.jpg)
Problem Definition
A B3 2
SDF graph, scheduleand execution time are given
A system with multiple retention time memories
Map the buffer to memoryto minimize the energy consumption
![Page 13: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/13.jpg)
Our Approach
A
B
D
C E
F1
2 1 2
1
21
1 1
2
1. Construct a scheduleAACBDDFEEEE
A A C B D D F E E E E
2. Build lifetime chart
STT-Short
STT-Long
3. Determine buffer mapping
Energy consumption = 13860
Energy consumption = 15033
![Page 14: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/14.jpg)
Write energy
Refresh energy
Total energy = write energy+refresh energy
Buffer Mapping Formulation
Constraint Meaning
lt(tj) The lifetime of token belonging to buffer
map(bi) The mapped memory for buffer
rt(m) The retention time of memory
bi The buffer size on edge
Eref(m) The refresh energy for a token in memory
![Page 15: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/15.jpg)
Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)
Problem Definition Answer Set Programming Experiment Conclusion
Outline
![Page 16: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/16.jpg)
Declarative approach for NP problems Problem - logic predicates “ AND” Solutions - answer sets Easy to understand the formulation Fast ASP solvers have been introduced
Answer Set Programming (ASP)
![Page 17: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/17.jpg)
Problem Solving Flow
A B3 3
2 25
3node(1..2).edge(1,1,2,3,3,3).edge(2,2,1,2,2,5).repetition(1,1).repetition(2,1).
lifetime(E,Inv, Duration) :- fire(A,S), fire(B,F), edge(E,A,B,P,C,I), numFiredBefore(A,S,SN), num-FiredBefore(B,F,FN), Inv=FN*C-C+1..FN*C, SN*P-P <Inv, Inv <= SN*P, accRealTime(Start,S), accRe-alTime(Finish,F), Duration=Finish-Start+ATime, Du-ration>0, Inv>0, Inv<= R*P,repetition(A,R), S<F, ex-time(A,ATime).
buffer_energy(E,Write*P*Rep+Refresh*Energy) :- Energy = [lifetime(E,T,Duration)=Duration/Retention+1], edge(E,A,_,P,_,I), retention(Type,Retention), mem-ory_type(M,Type), map(E,M), refresh_energy(Type,Refresh), write_energy(Type,Write), repetition(A,Rep).
1 { memory_type(M,T) : retention(T,_) } 1 :- memory(M).1 { map(E,M) : memory(M) } 1 :-
edge(E,_,_,_,_,_).sample(E,S-C,T) :- fire(B,T), edge(E,_,B,P,C,I), sample(E,S,T-1), S>= C, time(T).
#minimize [buffer_energy(E,Energy)=Energy : edge(E,_,_,_,_,_)].
Answer: 1
memory_type(2,1) memory_type(1,1) map(8,2) map(7,2) map(6,2) map(5,2) map(4,2) map(3,2) map(2,2) map(1,2) buffer_energy(8,3123) buffer_energy(7,11196) buffer_energy(6,12438) buffer_energy(5,4850) buffer_energy(4,11196) buffer_energy(3,11196) buffer_energy(2,11196) buffer_energy(1,19269)
Optimization: 84464
Answer: 2
memory_type(2,2) memory_type(1,1) map(8,2) map(7,2) map(6,2) map(5,2) map(4,2) map(3,2) map(2,2) map(1,2) buffer_energy(8,5004) buffer_energy(7,5994) buffer_energy(6,5994) buffer_energy(5,6660) buffer_energy(4,5994) buffer_energy(3,5994) buffer_energy(2,5994) buffer_energy(1,5994)
Optimization: 47628
Answer: 3
memory_type(2,2) memory_type(1,1) map(8,2) map(7,2) map(6,2) map(5,1) map(4,2) map(3,2) map(2,2) map(1,2) buffer_energy(8,5004) buffer_energy(7,5994) buffer_energy(6,5994) buffer_energy(5,4850) buffer_energy(4,5994) buffer_energy(3,5994) buffer_energy(2,5994) buffer_energy(1,5994)
Optimization: 45818
OPTIMUM FOUND
SDF Graph ASP formulation Result
![Page 18: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/18.jpg)
Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)
Problem Definition Answer Set Programming Experiments Conclusion
Outline
![Page 19: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/19.jpg)
Synthetic examples◦7 randomly generated examples◦ 3 to 7 actors
Real-life applications◦ Part of CELP ◦ H.263 encoder / decoder◦ MP3 decoder
Each node n has the execution time ◦ T(n) = k*Ti(n)◦ where k represents the scale factor, Ti(n) the initial execution time,
and T(n) the execution time of node n.
Experiments
CPU Intel i5RAM 8GBOS Ubuntu Linux ASP Solver Clingo 3.0
![Page 20: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/20.jpg)
Synthetic SDF Graphs
A
B
C
1
3
1 2
3
2
(a)
A
B
C
D
2
2
3
3
1
1
1
1
(b)
A
B
C
D1
3
1
12
1
2
1
2
(c)
B
C
D
E G
FA 1
21
2
1 12 2
2 2
3
1
3 3
(d)
A
B
D
C E
F1
2 1 2
1
21
1 1
2
(e)
A
B
C E
D F2 1 1 2
3223
3
1
(f)
A
B
D
C
E
F4
6
9
213
39 2
6
(g)
88
![Page 21: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/21.jpg)
Real-life SDF Graphs
![Page 22: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/22.jpg)
Assumed STT-MRAM Parameters
![Page 23: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/23.jpg)
Normalized Energy Consumption w/ multiple retention memories
Scale factor = 1 Scale factor = 10
Scale factor = 1000 Scale factor = 50000
![Page 24: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/24.jpg)
Mapped STT-MRAMs
scale factor
ratio
![Page 25: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/25.jpg)
Normalized Energy Consumption w/ an STT-MRAM
Scale factor=1 Scale factor=10
![Page 26: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/26.jpg)
Buffer mapping algorithm for a system with mul-tiple retention STT-MRAM memories can reduce the energy consumption by 30~70%.
The mapped STT-MRAM memory is dependent on the variable lifetime.
Conclusion
![Page 27: Kwangil Choi, Hyunok Oh Hanyang University](https://reader035.vdocuments.site/reader035/viewer/2022062315/56816385550346895dd46d3f/html5/thumbnails/27.jpg)
Thank you