Systems Changes: Errors and Breakdowns; Approaches; Learning
1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer...
-
Upload
cordelia-harper -
Category
Documents
-
view
217 -
download
0
description
Transcript of 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer...
![Page 1: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/1.jpg)
1
Lecture 2: Memory Energy
• Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy
![Page 2: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/2.jpg)
2
Power Wall
• Many contributors to memory power (Micron power calc):
Overfetch Channel Buffer chips and SerDes Background power (output drivers) Leakage and refresh
![Page 3: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/3.jpg)
3
Power Wall
• Memory system contribution (see HP power advisor):
IBM data, fromWETI 2012 talkby P. Bose
![Page 4: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/4.jpg)
4
Overfetch
• Overfetch caused by multiple factors:
Each array is large (fewer peripherals more density)
Involving more chips per access more data transfer pin bandwidth
More overfetch more prefetch; helps apps with locality
Involving more chips per access less data loss when a chip fails lower overhead for reliability
![Page 5: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/5.jpg)
5
Re-Designing Arrays Udipi et al., ISCA’10
![Page 6: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/6.jpg)
6
Selective Bitline Activation
• Additional logic per array so that only relevant bitlines are read out
• Essentially results in finer-grain partitioning of the DRAM arrays
• Two papers in 2010: Udipi et al., ISCA’10, Cooper-Balis and Jacob, IEEE Micro
![Page 7: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/7.jpg)
7
Rank Subsetting
• Instead of using all chips in a rank to read out 64-bit words every cycle, form smaller parallel ranks
• Increases data transfer time; reduces the size of the row buffer
• But, lower energy per row read and compatible with modern DRAM chips
• Increases the number of banks and hence promotes parallelism (reduces queuing delays)
• Initial ideas proposed in Mini-Rank (MICRO 2008) and MC-DIMM (CAL 2008 and SC 2009)
![Page 8: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/8.jpg)
8
DRAM Variants – LPDRAM and RLDRAM
• LPDDR (low power) and RLDRAM (low latency)
Data from Chatterjee et al. (MICRO 2012)
![Page 9: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/9.jpg)
9
LPDRAM
• Low power device operating at lower voltages and currents
• Efficient low power modes, fast exit from low power mode
• Lower bus frequencies
• Typically used in mobile systems (not in DIMMs)
![Page 10: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/10.jpg)
10
Heterogeneous Memory Chatterjee et al., MICRO 2012
• Implement a few DIMMs/channels with LPDRAM and a few DIMMs/channels with RLDRAM
• Fetch critical data from RLDRAM and non-critical data from LPDRAM
• Multiple ways to classify data as critical or not:
identify hot (frequently accessed) pages the first word of a cache line is often critical Every cache line request is broken into two requests
![Page 11: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/11.jpg)
11
Row Buffer Management
• Open Page policy: maximizes row buffer hits, minimizes energy
• Close Page policy: helps performance when there is limited locality
• Hybrid policies: can close a row buffer after it has served its utility; lots of ways to predict utility: time, accesses, locality counters for a bank, etc.
![Page 12: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/12.jpg)
12
Micro-Pages Sudan et al., ASPLOS’10
• Organize data across banks to maximize locality in a row buffer
• Key observation: most locality is restricted to a small portion of an OS page
• Such hot micro-pages are identified with hardware counters and co-located on the same row
• Requires hardware indirection to a page’s new location
• Works well only if most activity is confined to a few micro-pages
![Page 13: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/13.jpg)
13
MemScale Deng et al., ASPLOS 2011
• Performs DVFS on the memory controller and DFS on the channel
• The frequencies depend on bandwidth utilization and estimated energy/performance drop
• Requires no change to DRAM chips and DIMMs (in modern systems, the channel/DIMM frequency is set at boot time)
• Only saves energy on the processor, not on the channel and DIMM
![Page 14: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/14.jpg)
14
Refresh
• Every DRAM cell must be refreshed within a 64 ms window
• A row read/write automatically refreshes the row • Every refresh command performs refresh on a number of rows, the memory system is unavailable during that time • A refresh command is issued by the memory controller once every 7.8us on average
![Page 15: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/15.jpg)
15
RAIDR Liu et al., ISCA 2012
• Process variation impacts the leakage rate for each cell
• Groups of rows are classified into bins based on leakage rate
• Each bin has its own refresh rate (multiples of 64ms) that are tracked with Bloom filters
• Prior work: Smart Refresh: skip refresh for recently read rows Flikker: non-critical data is placed in rows that are refreshed less frequently
![Page 16: 1 Lecture 2: Memory Energy Topics: energy breakdowns, handling overfetch, LPDRAM, row buffer management, channel energy, refresh energy.](https://reader036.fdocuments.in/reader036/viewer/2022082510/5a4d1b137f8b9ab059990a69/html5/thumbnails/16.jpg)
16
Title
• Bullet