the bunker cache for spatio value approximation
play

The Bunker Cache for Spatio-Value Approximation Joshua San Miguel - PowerPoint PPT Presentation

The Bunker Cache for Spatio-Value Approximation Joshua San Miguel Jorge Albericio Natalie Enright Jerger Aamer Jaleel Data Movement and Storage off-chip memory shared last-level cache private caches processor core 2 Data Movement and


  1. The Bunker Cache for Spatio-Value Approximation Joshua San Miguel Jorge Albericio Natalie Enright Jerger Aamer Jaleel

  2. Data Movement and Storage off-chip memory shared last-level cache private caches processor core 2

  3. Data Movement and Storage off-chip memory high cost of moving data shared last-level cache Accessing memory is 10x – 100x greater latency and private caches energy than accessing private cache! processor core 3

  4. Data Movement and Storage off-chip memory high cost of moving data high cost of storing data shared last-level cache Last-level cache consumes substantial energy and private caches takes up 30%-50% of chip area! processor core 4

  5. Data Movement and Storage off-chip memory optimize via data addresses e.g., cache prefetching shared last-level cache private caches processor core 5

  6. Data Movement and Storage off-chip memory optimize via data addresses e.g., cache prefetching optimize via data values e.g., cache compression shared last-level cache private caches processor core 6

  7. Data Movement and Storage off-chip memory optimize via data addresses e.g., cache prefetching optimize via data values complexity of tracking address correlations e.g., cache compression shared last-level cache private caches processor core 7

  8. Data Movement and Storage off-chip memory optimize via data addresses e.g., cache prefetching optimize via data values complexity of tracking address correlations e.g., cache compression shared last-level cache complexity of manipulating data values private caches processor core 8

  9. Data Movement and Storage off-chip memory optimize via data addresses e.g., cache prefetching optimize via data values complexity of tracking address correlations e.g., cache compression shared last-level cache complexity of manipulating data values Can we improve data movement and storage private caches simultaneously without the added complexities? processor core (where data is located?  what value is encoded in data?) 9

  10. Our Work We explore Spatio-Value Similarity :  there is regularity to where approximately similar values are located in memory We propose the Bunker Cache :  many-to-one similarity mapping based on memory address  savings in runtime (1.58x), dynamic energy (1.72x), leakage power (1.65x) at acceptable quality levels 10

  11. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits. 11

  12. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits. data values can often be approximate and continuous (i.e., smooth) 12

  13. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits. data values can often be approximate data addresses represent a and continuous (i.e., smooth) one-dimensional memory space 13

  14. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. 14

  15. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 15

  16. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 16

  17. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 17

  18. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z approximately similar and contiguous x y memory space: 18

  19. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 19

  20. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 20

  21. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 21

  22. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. z x y memory space: 22

  23. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. similar but not contiguous z x y memory space: 23

  24. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. similar but not contiguous z x y STRIDE memory space: 24

  25. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. e.g., image processing 25

  26. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. e.g., image processing similar but not contiguous STRIDE = image row size 26

  27. Spatio-Value Similarity where data is located?  what value is encoded in data? The goal of a processor is to process real-world information, not bits.  Spatio-Value Similarity : there is regularity to where approximately similar values are located in memory. e.g., image processing e.g., signal processing STRIDE = image row size STRIDE = signal period 27

  28. Spatio-Value Similarity Given any data block, how similar is it to the block that is distance X away from it? 28

  29. Spatio-Value Similarity Given any data block, how similar is it to the block that is distance X away from it? similarity distance away debayer 29

  30. Spatio-Value Similarity Given any data block, how similar is it to the block that is distance X away from it? similarity contiguous data are similar in value distance away debayer 30

  31. Spatio-Value Similarity Given any data block, how similar is it to the block that is distance X away from it? similarity contiguous data similar data are stored are similar in value at regular intervals distance away debayer dwt53 31

  32. Spatio-Value Similarity Given any data block, how similar is it to the block that is distance X away from it? similarity contiguous data similar data are stored are similar in value at regular intervals distance away change-detection 2dconv debayer dwt53 histeq jpeg kmeans lucas-kanade 32

  33. The Bunker Cache off-chip memory shared last-level cache private caches processor core 33

  34. The Bunker Cache off-chip memory Bunker Cache private caches processor core 34

  35. The Bunker Cache off-chip memory Treat address X and address X+STRIDE as if they are one and the same Bunker Cache private caches processor core 35

  36. Conventional Cache physical address way 0 way N way 0 way N tag tag data data ● ● ● ● ● ● 36

  37. Conventional Cache physical address way 0 way N way 0 way N tag tag data data ● ● ● ● ● ● index set function 37

  38. Conventional Cache physical address way 0 way N way 0 way N tag tag data data ● ● ● ● ● ● index set function tag hit? = = hit? 38

  39. Conventional Cache physical address way 0 way N way 0 way N tag tag data data ● ● ● ● ● ● index set function tag hit? = = hit? data 39

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend