Memory Hierarchy

Different Kinds of Memory

SRAM (made with logic gates)

  • Fast: ~2ns access time
  • Expensive, high area requirement
    • ~$5.0 per megabyte
    • $0.13 for LC2
    • $20000 for MIPS

DRAM (transistor and capacitor)

  • Slower: ~60ns access time
    • Must stall for dozens of cycles on each memory load
  • Less expensive than SRAM
    • ~$0.004 per megabyte
    • $0.00 for LC2
    • $16 for MIPS/Pentium-IV/Athlon-XP

Flash (floating gate transistors)

  • Slower still: ~250ns access time
    • Must stall for dozens of cycles on each memory load
  • Less expensive than SRAM
    • ~$0.0012 per megabyte
    • $0.00 for LC2
    • $4.9 for MIPS/Pentium-IV/Athlon-XP
  • Non-volatile

Disks (Mechanical, Giant Magnetoresistance GMR)

  • Obnoxiously slow: 3,000,000ns (3 ms) access time
  • Cheap
    • ~$0.000043 per megabyte
    • $0.00 LC2
    • $0.18 for MIPS
  • Non-volatile

Memory Hierarchy Goals

Hierarchical Memory

  • A small array of SRAM
    • Small so fast and cheap
    • Cache (hopefully covers most loads and stores)
  • A larger amount of DRAM
    • Cheaper than SRAM, faster than flash/disk
    • Main Memory
  • A lot of flash and/or disk
    • Non-volatile. Cheap. Big
      flash and/or disk
    • Non-volatile. Cheap. Big
    • Virtual Memory
Memory hierarchy management refers to the process of organizing and managing the different levels of memory in a computer system, including the cache, main memory, and secondary storage. The goal of memory hierarchy management is to optimize the use of memory resources and improve system performance. This is achieved through a combination of hardware and software techniques that help to minimize the amount of time it takes to access data from memory. At the lowest level of the memory hierarchy is the main memory, which is typically implemented using dynamic random-access memory (DRAM) chips. Main memory is fast but expensive, so it is relatively small compared to the amount of data that needs to be stored in a typical computer system. To make up for the limited capacity of main memory, computer systems use caching techniques to store frequently accessed data in a faster, smaller cache memory. The cache is typically implemented using static random-access memory (SRAM) chips, which are much faster than DRAM but more expensive. Memory hierarchy management involves coordinating the movement of data between the different levels of the memory hierarchy, based on factors such as the frequency of access, the size of the data, and the available memory resources. This is done using algorithms such as cache replacement policies, which determine which data should be evicted from the cache to make room for new data. Other memory management techniques include virtual memory, which allows the operating system to use secondary storage as an extension of main memory, and memory compression, which compresses data in memory to free up space for additional data. Overall, memory hierarchy management is critical to the performance and efficiency of modern computer systems, and requires a careful balance of hardware and software optimizations to achieve optimal results.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值