1 / 20

COEN/ELEN 180 Storage Systems

COEN/ELEN 180 Storage Systems. Memory Hierarchy. Memory Hierarchy. We are therefore forced to recognize the possibility of constructing a hierarchy of memories, each of which has greater capacity than the preceding but which is less quickly accessible.

olga-sharpe
Download Presentation

COEN/ELEN 180 Storage Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COEN/ELEN 180 Storage Systems Memory Hierarchy

  2. Memory Hierarchy We are therefore forced to recognize the possibility of constructing a hierarchy of memories, each of which has greater capacity than the preceding but which is less quickly accessible. A. W. Burks, H. H. Goldstine, J. von Neumann: Preliminary Discussion of the Logical Design of Electronic Computing Instrument, Part I, Vol. I, Report prepared for the U.S. Army Ord. Dept. 28 June 1946

  3. Computer Components There are three basic hardware modules: (Bell, Newell: Computer Structures, 1971): • Processors • Memory • Communication

  4. Memory / Storage Evaluation • Costs • Capacity • Speed • Reliability • Volatility • Power Consumption • Space Needs • Other criteria such as transportability

  5. Memory / Storage Evaluation

  6. Memory Hierarchy

  7. Exploiting the Memory Hierarchy • Not all stored data is equally important. • Put important data in the upper ranges of the memory / storage hierarchy. • Put unimportant data in the lower ranges.

  8. Exploiting the Memory Hierarchy • Locality • Spatial Locality: • Data is more likely to be accessed if neighboring data is accessed. • Temporal Locality: • Data is more likely to be accessed if it has been recently accessed.

  9. Exploiting the Memory Hierarchy • Executables • Program executions tend to spend a great portion of time in loops. • Spatial locality: if a statement in the loop is executed, then so are the statements surrounding it. • Temporal locality: if a statement is executed, it is likely to be executed again.

  10. Exploiting the Memory Hierarchy • Relational Databases • Store data in relations • Relation consists of fields • Often with Record ID. • Stored in a B+ tree or in a (linear) hash table. • Spatial Locality • Accessing all records in order, records are stored in B+ tree. • Makes sense to move records in bunches from disk / tape to main memory. • Typical transaction has no spatial locality. • Accesses a record here and there all over the place. • No spatial locality.

  11. Exploiting the Memory Hierarchy • Relational Databases • Temporal Locality • Some records are hot, most are cold. • Records of current students vs. records of graduates. • Active accounts in a bank database. • Current patients versus other patients. • Some transactions look at the same record several times (due to inefficiencies).

  12. Exploiting the Memory Hierarchy • File System • Temporal Locality: • Few files are frequently accessed (OS kernel, killer apps, data in current projects). • Most are written and never read again. • Spatial Locality: • Not only individual files, but also directories can become hot.

  13. Exploiting the Memory Hierarchy • Caching strategy: • Keep popular items in expensive, small, and fast memory. • Keep less popular items in cheap, big, and slow memory. • Use spatial & temporal locality to guess what items are popular.

  14. Exploiting the Memory Hierarchy • Use Caches throughout the Memory Hierarchy • Registers & SRAM versus DRAM (main memory) • Disk buffer versus Disk platter • Disks versus Tapes • Local Storage versus Remote Storage

  15. Cache Analysis • Assume two levels of memory: • Cache: fast, small, expensive. • Main: slow, large, cheap. • Data access: • Read • Write • Assume read only access • Given data identifier, read data.

  16. Cache Analysis • Hit rate h: chances of satisfying read request from cache. • Miss rate m: chances having to read from main. • h + m = 1

  17. Cache Analysis • tCTime to read from cache • tM Time to read from main • tC < tM • Expected access time = system access time • tSystem = h tC + m tM • Hit rates high: system access time close to cache access time

  18. Caching Issues • Larger cache  slower access times • Selection of items into cache • Good selection takes more time and uses more resources • Cache architecture depends on the situation • Cache between main memory and processor • Cache between disk drive(s) and main memory • Cache between remote and local storage

  19. Trends in Storage • Costs of IT is moving from processing to storage • Data center costs centered around: • Personnel • Power including cooling • Level of Service Agreements: • Same data center services different streams with different quality of service requirements • Google Search vs. G-Mail

  20. Data Center Cost Factors Source: HP Technical Report HPL-2005-107

More Related