Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dynamic Cache Management


Published on

  • Be the first to like this

Dynamic Cache Management

  1. 1. A Seminar Presentation On “Dynamic Cache Management Technique” Presented By: Ajay Singh Lamba (IT , Final Year)
  2. 2. Content <ul><li>Introduction to cache memory </li></ul><ul><li>How stored data is transferred to the CPU </li></ul><ul><li>Mapping functions </li></ul><ul><li>Dynamic Cache Management </li></ul><ul><li>Dynamic Techniques For L0-cache Management </li></ul>
  3. 3. Introduction to cache memory <ul><li>A cache, in computer terms, is a place to store information that's faster than the place where the information is usually stored </li></ul><ul><li>Cache memory is fast memory that is used to hold the most recently accessed data </li></ul><ul><li>Only frequently accessed data will stay in cache, which allows the CPU to access it more quickly </li></ul><ul><li>it is placed in the processor chip, which allows it to 'talk' with the processor direct at a much higher speed than standard RAM. </li></ul>
  4. 4. How stored data is transferred to the CPU ??
  5. 5. Mapping functions <ul><li>Since M>>C, how are blocks mapped to specific lines in cache. </li></ul><ul><li>Direct mapping </li></ul><ul><li>Associative mapping </li></ul><ul><li>Set associative mapping </li></ul>
  6. 6. Dynamic Cache Management <ul><li>It’s resizing strategy of the cache memory </li></ul><ul><li>Dynamic caching allows for dynamic resizing both across and within applications execution. </li></ul><ul><li>The basic idea is that only the most frequently executed portion of the code should be stored in the L0-cache </li></ul>
  8. 8. DYNAMIC TECHNIQUES FOR L0-CACHE MANAGEMENT <ul><li>1. Simple Method. </li></ul><ul><li>2. Static Method. </li></ul><ul><li>3. Dynamic Confidence Estimation Method. </li></ul><ul><li>4. Restrictive Dynamic Confidence Estimation Method. </li></ul><ul><li>5. Dynamic Distance Estimation Method. </li></ul>
  9. 9. SIMPLE METHOD <ul><li>If a branch predictor is mispredicted, the machine will access the I-cache to fetch the instructions. </li></ul><ul><li>If a branch is predicted correctly, the machine will access the L0-cache. </li></ul><ul><li>In a misprediction , the machine will start fetching the instructions from the correct address by accessing the I-cache. </li></ul>
  10. 10. STATIC METHOD <ul><li>If a ‘high confidence’ branch was predicted incorrectly, the I-cache is accessed for the subsequent basic blocks. </li></ul><ul><li>If more than n low confidence branches have been decoded in a row, the I-cache is accessed. Therefore the L0-cache will be bypassed when either of the two conditions are satisfied. </li></ul><ul><li>In any other case the machine will access the L0-cache. </li></ul>
  11. 11. DYNAMIC CONFIDENCE ESTIMATION METHOD <ul><li>It is a dynamic version of the static method. </li></ul><ul><li>The confidence of the I-cache is accessed if </li></ul><ul><li>1. A high confidence branch is mispredicted. </li></ul><ul><li>2. More than n successive ‘low confidence’ branches are encountered. </li></ul><ul><li>it is more accurate in characterizing a branch and, then, regulating the access of the L0-cache. </li></ul>
  12. 12. RESTRICTIVE DYNAMIC CONFIDENCE ESTIMATION METHOD <ul><li>Restrictive dynamic scheme is a more selective scheme in which only the really important basic blocks would be selected for the L0-cache. </li></ul><ul><li>The L0-cache is accessed only if a ‘high confidence’ branch is predicted correctly. The I-cache is accessed in any other case. </li></ul><ul><li>This method selects some of the most frequently executed basic blocks, yet it misses some others. </li></ul>
  13. 13. Dynamic Distance Estimation Method <ul><li>All n branches after a mispredicted branch are tagged as ‘low confidence’ otherwise as ‘high confidence’. </li></ul><ul><li>The basic blocks after a ‘low confidence’ branch are fetched from the L0-cache. </li></ul><ul><li>The net effect is that a branch misprediction causes a series of fetches from the I-cache. </li></ul><ul><li>A counter is used to measure the distance of a branch from the previous mispredicted branch. </li></ul>
  14. 14. Thank you Any Query ??