1 / 27

Kwangil Choi, Hyunok Oh Hanyang University

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

frye
Download Presentation

Kwangil Choi, Hyunok Oh Hanyang University

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Energy Aware Buffer Mapping Technique on Multiple Retention Time STT-MRAMs for Stream Applications Kwangil Choi, Hyunok Oh Hanyang University

  2. Outline • Introduction • Non-volatile Memory (NVM) • Synchronous dataflow (SDF) • Problem Definition • Answer Set Programming • Experiment • Conclusion

  3. Introduction • Non-Volatile Memory (NVM) • Replace DRAM for main memory

  4. STT-MRAM Cell Structure Top Electrode current Top AF Layer Spacing Layer Synthetic Anti ferromagnetic (SyAF) structure Bottom AF Layer free layer MTJ* Buffer Layer tunnel oxide Capping Layer Pinned Layer fixed layer Tunnel Barrier Free Layer Seed Layer Bottom Electrode(substrate) Gate Source Drain (*MTJ : Magnetic Tunnel Junction)

  5. Reduction of Retention Time The reduction of the retention time contributes the cell density, leakage power, dynamic power consumption, and performance.

  6. STT-MRAMs with Different Retention Times

  7. System with Multiple Retention Time Memories 26.5μs STT1 memory 3.24s STT2 memory processor 4.27y STT3 memory

  8. Application Specification • 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 3 2 A B

  9. Motivational Example } 1ms Tretention= 1 ms Tretention= 4 ms 16 refresh operations no refresh operation

  10. Outline • Introduction • Non-volatile Memory (NVM) • Synchronous dataflow (SDF) • Problem Definition • Answer Set Programming • Experiment • Conclusion

  11. Problem Definition • Input • Target architecture: A system with multiple relaxed retention time STT-MRAM modules. Note that the memory refreshes 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 memory system for the application. • Output • The mapping of buffers to STT-MRAM modules.

  12. Problem Definition Map the buffer to memory to minimize the energy consumption 3 2 A B SDF graph, schedule and execution time are given A system with multiple retention time memories

  13. Our Approach 1. Construct a schedule AACBDDFEEEE Energy consumption = 13860 STT- Short STT- Long Energy consumption = 15033 2. Build lifetime chart 3. Determine buffer mapping

  14. Buffer Mapping Formulation • Write energy • Refresh energy • Total energy = write energy+refresh energy

  15. Outline • Introduction • Non-volatile Memory (NVM) • Synchronous dataflow (SDF) • Problem Definition • Answer Set Programming • Experiment • Conclusion

  16. Answer Set Programming (ASP) • Declarative approach for NP problems • Problem - logic predicates “ AND” • Solutions - answer sets • Easy to understand the formulation • Fast ASP solvers have been introduced

  17. Problem Solving Flow Answer: 1memory_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: 2memory_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: 3memory_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 lifetime(E,Inv, Duration) :- fire(A,S), fire(B,F), edge(E,A,B,P,C,I), numFiredBefore(A,S,SN), numFiredBefore(B,F,FN), Inv=FN*C-C+1..FN*C, SN*P-P <Inv, Inv <= SN*P, accRealTime(Start,S), accRealTime(Finish,F), Duration=Finish-Start+ATime, Duration>0, Inv>0, Inv<= R*P,repetition(A,R), S<F, extime(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), memory_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,_,_,_,_,_)]. 5 2 2 A B 3 3 SDF Graph ASP formulation Result 3 node(1..2). edge(1,1,2,3,3,3).edge(2,2,1,2,2,5). repetition(1,1).repetition(2,1).

  18. Outline • Introduction • Non-volatile Memory (NVM) • Synchronous dataflow (SDF) • Problem Definition • Answer Set Programming • Experiments • Conclusion

  19. Experiments • 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.

  20. Synthetic SDF Graphs

  21. Real-life SDF Graphs

  22. Assumed STT-MRAM Parameters

  23. Normalized Energy Consumption w/ multiple retention memories Scale factor = 1 Scale factor = 10 Scale factor = 50000 Scale factor = 1000

  24. Mapped STT-MRAMs ratio scale factor

  25. Normalized Energy Consumption w/ an STT-MRAM Scale factor=1 Scale factor=10

  26. Conclusion • Buffer mapping algorithm for a system with multiple retention STT-MRAM memories can reduce the energy consumption by 30~70%. • The mapped STT-MRAM memory is dependent on the variable lifetime.

  27. Thank you

More Related