• cache和内存


    CPU与内存

    北桥:主桥,主要用来处理高速信号,负责与处理器的联系;CPU通过FSB前端总线来访问内存控制器。

    南桥:IO桥,负责IO总线之间的通信,比如PCI总线、SATA、USB等,可以连接光驱、硬盘、键盘等设备交换数据。

    架构一:内存控制器集成在北桥中,缺陷:瓶颈有二,北桥和内存,当处理器和外设争相访问内存时,增大了对北桥带宽的竞争;

    架构二:将内存控制器单独隔离出来,以协调北桥与某个相应内存之间的交互,北桥可以与多个内存相连;--优点,增加了内存的访问带宽,但没有解决单一北桥芯片的瓶颈;

    架构三:NUMA架构,Non-Uniform Memory Archetecture,非一致性内存架构,每个处理器都有本地内存,每个处理器也可以访问其他处理器的内存,不过需要额外的总线;

    Cache

    Cache存在的意义,匹配处理器和内存之间巨大的速度鸿沟(一般,处理器从内存中直接读取数据要花大概几百个时钟周期),cache一般采用SRAM。

    cache的分级,是从成本和生产工艺的角度考虑的,随着nm工艺的推出,三级cache也逐渐集成到处理器内部了。

    处理器对一级cache(分为数据cache和指令cache)的访问速度:3~5个时钟周期,对二级cache大约是十几个时钟周期,每个处理器都拥有仅属于自己的一级、二级cache。

    处理器对三级cache需要几十个指令周期,在多核处理器内部,多核共有一个三级cache---当某个处理器极大占用三级cache时,会导致其他处理器只能占用极小的容量,从而导致Cache不命中,性能下降,为此,Intel推出CAT技术,采用软件可配置的算法来控制每个核心可以用到的cache大小。

  • 相关阅读:
    Yum安装Lamp环境
    Cacti系统监控安装
    源码安装Memcache
    Lamp源码编译+SVN安装
    分页数据列表写法
    文件单位转换函数
    Session写入到Memcache,Redis和数据库中
    [LeetCode#30]Substring with Concatenation of All Words
    快速创建php server
    Git skills in reseting files
  • 原文地址:https://www.cnblogs.com/studyofadeerlet/p/7163834.html
Copyright © 2020-2023  润新知