View
211
Download
0
Category
Tags:
Preview:
Citation preview
A Study of Energy Efficiency A Study of Energy Efficiency Methods for MemoryMethods for Memory
Mao-Yin Wang & Cheng-Wen Wu
2LARC
Memory Energy ReductionMemory Energy ReductionMemory Energy ReductionMemory Energy Reduction
Memory Compression
Memory Partitioning
Sleep mode control
Memory bandwidth optimization
Memory Hierarchy
Software ApproachAccess Pattern AnalysisLocality
3LARC
OutlineOutlineOutlineOutline
Introduction
Relative works
Conclusions
4LARC
Related WorkRelated WorkRelated WorkRelated Work A. Farahi, G. Telez, M. Sarrafzadeh, “Memory Segmentatio
n to Exploit Sleep Mode Operation”, DAC’95, pp. 36-41. L. Benini A. Macii, E. Macii, M. Poncino, “Region Compress
ion: A New Scheme for Memory Energy Minimization in Embedded Systems”, EUROMICRO conference, 1999, pp. 311-317.
L. Benini, A. Macii, E. Macii, M. Poncino, “Minimizing Memory Access Energy in Embedded Systems by Selective Instruction Compression”, IEEE Trans. On VLSI, vol. 10. pp. 521-531, Oct. 2002.
L. Benini, L. Macchiarulo, A. Macii, M. Poncino, “Layout-Driven Memory Synthesis for Embedded Systems-on-Chip”, IEEE Trans. on VLSI, vol. 10, pp. 96-105, Apr. 2002.
A. Macii, E. Macii, M. Poncino, “Improving the Efficiency of Memory Partitioning by Address Clustering”, DATE’03, pp. 18-23.
5LARC
Introduction (1/2)Introduction (1/2)Introduction (1/2)Introduction (1/2)
Source: ITRS 2000Source: ITRS 2000
6LARC
Introduction (2/2)Introduction (2/2)Introduction (2/2)Introduction (2/2)
According to the ITRS, expected 71% of area is occupied by memory in 2005
Memory is power hungry
Data-intensive applications in embedded systems
Energy efficiency is necessary
7LARC
Memory Segmentation [1]Memory Segmentation [1]Memory Segmentation [1]Memory Segmentation [1]
Based on sleep mode
)(),( 212121 swswattssG
8LARC
Memory Compression (1/3) [2]Memory Compression (1/3) [2]Memory Compression (1/3) [2]Memory Compression (1/3) [2]
Based on consecutive instruction group in a program
Limited by # of instructions in a compression region
Based on consecutive instruction group in a program
Limited by # of instructions in a compression region
9LARC
Memory Compression (2/3)Memory Compression (2/3)Memory Compression (2/3)Memory Compression (2/3)
(1)(1)
(2)(2)
10LARC
Memory Compression (3/3)Memory Compression (3/3)Memory Compression (3/3)Memory Compression (3/3)
(3.1)(3.1)(3.2)(3.2)
11LARC
Instruction Fetch Energy for Off-Chip Instruction Fetch Energy for Off-Chip FLASH MemoryFLASH Memory
Instruction Fetch Energy for Off-Chip Instruction Fetch Energy for Off-Chip FLASH MemoryFLASH Memory
12LARC
Memory TrafficMemory TrafficMemory TrafficMemory Traffic
13LARC
Memory UsageMemory UsageMemory UsageMemory Usage
14LARC
Memory Partitioning [4]Memory Partitioning [4]Memory Partitioning [4]Memory Partitioning [4]
CoreCore
SRAM
(64K)
SRAM
(64K)
datadataaddraddr
cs
28K28K
4K4K
32K32K
DecoderDecoder
15LARC
Address ClusteringAddress ClusteringAddress ClusteringAddress Clustering
43.5% Energy Reduction43.5% Energy Reduction
56% Energy Reduction56% Energy Reduction
16LARC
Problem FormulationProblem FormulationProblem FormulationProblem Formulation
Find a relocation of a subset of the address space that maximizes the locality of the dynamic trace.
17LARC
Cost MetricsCost MetricsCost MetricsCost Metrics Given an array C = [c0, c1, …, cN-1] Infer a single-value quantity that express its
degree of spatial locality Find good sliding window such that the
density is large and the sliding window is small (i.e. less encoder overhead)
1
0iS
W-N 0,...,i )(max
W
jji
ii
c
SD(C,W)
18LARC
Density of the Original and a Clustered Density of the Original and a Clustered TraceTrace
Density of the Original and a Clustered Density of the Original and a Clustered TraceTrace
Sliding window WSliding window W
Normalized densityNormalized density
19LARC
Exploration AlgorithmExploration AlgorithmExploration AlgorithmExploration Algorithm
} 8
step; W7
return W; 6
{ Density)) T,,(C peif(EvalSlo 5
W);,d(C Density 4
{ N) to1 (W for 3
Sort(C);C 2
{ T)Explore(C, 1
sort
sort
sort
20LARC
Clustering AlgorithmClustering AlgorithmClustering AlgorithmClustering Algorithm
} 4
addresses visitedremaining Replace 3
mark them and sboth tracein addresses Find 2
{ GoldTrace) W,,(OrigTraceCluster 1
21LARC
Energy Savings (1/2)Energy Savings (1/2)Energy Savings (1/2)Energy Savings (1/2)
22LARC
Energy Savings (2/2)Energy Savings (2/2)Energy Savings (2/2)Energy Savings (2/2)
23LARC
Encoder Energy Overhead vs. MEncoder Energy Overhead vs. MEncoder Energy Overhead vs. MEncoder Energy Overhead vs. M
24LARC
ConclusionsConclusionsConclusionsConclusions
Energy efficiency methods are studied
Reduce memory traffic
Partition memory as smaller ones
Disable memory blocks
Trade off between performance and energy
Application-dependent
Recommended