Kwangil Choi, Hyunok Oh Hanyang University

27
An Energy Aware Buffer Mapping Technique on Multiple Retention Time STT-MRAMs for Stream Applications 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 Presentation

Transcript of Kwangil Choi, Hyunok Oh Hanyang University

Page 1: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)

Problem Definition Answer Set Programming Experiment Conclusion

Outline

Page 3: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

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

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

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

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

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

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

Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)

Problem Definition Answer Set Programming Experiment Conclusion

Outline

Page 11: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

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

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

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

Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)

Problem Definition Answer Set Programming Experiment Conclusion

Outline

Page 16: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

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

Introduction◦ Non-volatile Memory (NVM)◦ Synchronous dataflow (SDF)

Problem Definition Answer Set Programming Experiments Conclusion

Outline

Page 19: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

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

Real-life SDF Graphs

Page 22: Kwangil  Choi,  Hyunok Oh Hanyang  University

Assumed STT-MRAM Parameters

Page 23: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

Mapped STT-MRAMs

scale factor

ratio

Page 25: Kwangil  Choi,  Hyunok Oh Hanyang  University

Normalized Energy Consumption w/ an STT-MRAM

Scale factor=1 Scale factor=10

Page 26: Kwangil  Choi,  Hyunok Oh Hanyang  University

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

Thank you