Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdMatthias Geerts Laatst gewijzigd meer dan 9 jaar geleden
1
Cache Prestatie & Energieverbruik
2
Overzicht
3
Voorbeelden energieverbruik Cache
4
Overzicht Voorbeelden energieverbruik Cache Redenen hoog energieverbruik
5
Overzicht Voorbeelden energieverbruik Cache Redenen hoog energieverbruik Verbeteringen prestatie/energieverbruik
6
Energieverbruik Cache ProcessorKloksnelheidTotaal vermogen Aandeel cache Intel Pentium Pro 200Mhz 35W14% (I-cache)
7
Energieverbruik Cache ProcessorKloksnelheidTotaal vermogen Aandeel cache Intel Pentium Pro 200Mhz 35W14% (I-cache) DEC Alpha 21164PC 433Mhz 32,5W25% (L1,L2)
8
Energieverbruik Cache ProcessorKloksnelheidTotaal vermogen Aandeel cache Intel Pentium Pro 200Mhz 35W14% (I-cache) DEC Alpha 21164PC 433Mhz 32,5W25% (L1,L2) DEC StrongARM SA- 110 27%
9
Redenen hoge energieverbruik: Executie snelheid processor afhankelijk van snelheid cache
10
Redenen hoge energieverbruik: Executie snelheid processor afhankelijk van snelheid cache Beslaat een groot deel van het chipoppervlak
11
Probleemstelling Hoe kan het energieverbruik van cache verbeterd worden zonder dat de prestaties achteruit gaan?
12
Verbeteren prestaties en energieverbruik cache
13
Doelmatiger cache:
14
Verbeteren prestaties en energieverbruik cache Doelmatiger cache: Effectiviteit verhogen Hardware
15
Verbeteren prestaties en energieverbruik cache Doelmatiger cache: Effectiviteit verhogen Hardware Efficiency verhogen Hardware + compiler
16
Effectiviteit verhogen Gebruik maken van twee data eigenschappen:
17
Effectiviteit verhogen Gebruik maken van twee data eigenschappen: 1.Tijd localiteit 2.Ruimtelijke localiteit
18
Effectiviteit verhogen Gebruik maken van twee data eigenschappen: 1.Tijd localiteit 2.Ruimtelijke localiteit Selective Temperal and Aggressive Spatial cache (STAS)
19
Selective Temperal and Aggressive Spatial (STAS)
20
Data addres for CPU Data from/to CPU
21
Selective Temperal and Aggressive Spatial (STAS) TagData Direct mapped cache Data addres for CPU small block Data from/to CPU
22
Selective Temperal and Aggressive Spatial (STAS) TagData Direct mapped cache Data addres for CPU small block Data from/to CPU Tag CAM Spatial buffer Hit Bit Dirty Bit Large block small block
23
Selective Temperal and Aggressive Spatial (STAS) TagData Direct mapped cache Data addres for CPU small block Data from/to CPU Tag CAM Spatial buffer Hit Bit Dirty Bit Large block small block Decoder
24
Selective Temperal and Aggressive Spatial (STAS) TagData Direct mapped cache Data addres for CPU small block Direct-Mapped cache Hit Data from/to CPU Tag CAM Spatial buffer hit Hit Bit Dirty Bit Large block small block Decoder Data word
25
Selective Temperal and Aggressive Spatial (STAS) TagData Data addres for CPU small block Direct-Mapped cache Hit Data from/to CPU Tag CAM Spatial buffer hit Hit Bit Dirty Bit Large block small block Decoder Data word Off chip memory Direct mapped cache
26
Selective Temperal and Aggressive Spatial (STAS) TagData Data addres for CPU small block Direct-Mapped cache Hit Data from/to CPU Tag CAM Spatial buffer hit Hit Bit Dirty Bit Large block small block Decoder Data word Off chip memory Direct mapped cache
27
Resultaten STAS Dezelfde prestaties als conventionele direct mapped cache met slechts 25% van het oorspronkelijke oppervlak
28
Resultaten STAS Dezelfde prestaties als conventionele direct mapped cache met slechts 25% van het oorspronkelijke oppervlak effectiviteit cache veel hoger
29
Effeciency verhogen Zowel hardware als compiler aanpassen, zodat tijdens loops de i-cache geen onnodig werk doet
30
Effeciency verhogen Zowel hardware als compiler aanpassen, zodat tijdens loops de i-cache geen onnodig werk doet Extra L-cache, zodat tijdens een loop de i-cache uitgeschakeld wordt.
31
Effeciency verhogen Zowel hardware als compiler aanpassen, zodat tijdens loops de i-cache geen onnodig werk doet Extra L-cache, zodat tijdens een loop de i-cache uitgeschakeld wordt. Compiler die de plaatsing van de data in het L- cache regelt.
32
Compiler
33
Een instructie wordt geplaatst in de L-cache als het tot een Basic block behoort:
34
Compiler Een instructie wordt geplaatst in de L-cache als het tot een Basic block behoort: Do 100 i=1, n B1; #basic block if (error) then error handling; B2; # basic block 100 continue
35
Compiler(2) Twee optimalisatie fasen
36
Compiler(2) Twee optimalisatie fasen Function inlining Block placement
37
L-cache Data path I-cache
38
L-cache Data path I-cache L-cache Tag L-cache Data
39
L-cache Data path I-cache L-cache Tag L-cache Data 32 – bit Logic comp. 32 – bit MUX I-cache bus Blocked part L-cache hit PC
40
Resultaten L-cache + compiler Energiebesparing van wel 80% mogelijk, dit is sterk afhankelijk van het soort programma en de grootte van het L-cache.
41
Conclusie Doelmatiger cache reduceert het energie verbruik sterk zonder dat de prestaties achteruit gaan.
42
Literatuur A selective temporal and aggressive spatial cache system based on time interval Jung-Hoon Lee, Jang-Soo Lee, and Shin-Dug Kim Dep. Of Computer Science, Yonsei University Seoul, Korea, 2000 Architectural and Compiler Techniques for Energy Reduction in High-Performance Mircoprocessors Nikolaos Bellas, Ibrahim N. Hajj, Constantine D. Polychronopoulus, and George Stamoulis, 2000
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.