Cache and Memory Subsystem

Skylake Client微架构的缓存层级结构具有如下的增强:

  • 较前代具有更高的带宽
  • 更大的缓冲区,可以同时处理更大的读存与写存操作
  • 处理器可以同时并行地做两个页面走查(page walk),前几代只能做单页面走查。

注:据wikipedia https://en.wikipedia.org/wiki/Page_table

if there is a TLB miss, the memory management unit, or the operating system TLB miss handler, will typically look up the address mapping in the page table to see whether a mapping exists. This is called a page walk.

当发生TLB未中是,内存管理单元,或操作系统的TLB未中处理程序,会在页表中查询要访问的地址是否存在。这个过程叫做页面走查。

  • 跨页面读存储器数据产生的性能损失从前代微架构的100个周期下降为5个周期。
  • 支持CLFLUSHOPT指令刷空(flush)缓存行;对于被刷空(即回写到内存)的数据,使用SFENCE指令管理访存操作的排序。
  • 降低软件预取指令指定空指针(NULL pointer)时产生的性能损失
  • 二级缓存从8路组相联切换为4路组相联。

表:Skylake Client微架构高速缓存参数

Level

Capacity/

Associativity

Line Size

(bytes)

Fastest Latency[1]

(cycles)

Peak Bandwidth (bytes/cyc)

Sustained Bandwidth (bytes/cyc)

Update Policy

L1D

32KB/8

64

4

96 (2*32B load + 1*32B store)

~81

Writeback

LII

32KB/8

64

N/A

N/A

N/A

N/A

L2

256KB/4

64

12

64

~29

Writeback

L3 (shared)

Up to 2MB per Core /

Up to 16 ways

64

44

32

~18

Writeback

注1:软件可见的延迟根据访问模式以及其他因素会产生变化。

TLB的层级结构由专用的指令TLB,数据TLB,以及混和式的二级TLB。下表中的partition列指明当超线程启用时,TLB资源的分配/共享策略。

表:Skylake Client微架构的TLB参数

Level

Page Size

Entries

Associativity

Partition

指令ITLB

4KB

128

8

Dynamic

指令ITLB

2MB/4MB

8 per thread

fixed

数据DTLB

4KB

64

4

Fixed

数据DTLB

2MB/4MB

32

4

Fixed

数据DTLB

1GB

4

4

Fixed

二级TLB

4KB/2MB/4MB

1536

12

Fixed

二级TLB

1GB

16

4

Fixed

Intel Skylake (Client) 架构/微架构/流水线 (4) - 高速缓存存储器子系统相关推荐

  1. Intel® Nehalem/Westmere架构/微架构/流水线 (5) - 高速缓存 存储器子系统

    Cache and Memory Subsystem Intel Nehalem微架构的每个处理器核包括一个一级指令高速缓存,一个一级数据高速缓存,以及一个二级混和式(指令与数据)高速缓存.单个物理处 ...

  2. Intel Haswell/Broadwell架构/微架构/流水线 (5)-高速缓存存储器子系统

    Cache and Memory Subsystem 高速缓存层级结构与前代微架构类似,每个处理器核包括一级指令缓存,一级数据缓存,一个混和式二级缓存,核外的三级混和式缓存容量与特定的产品配置有关.三 ...

  3. Intel Skylake (Client) 架构/微架构/流水线 (5) - PAUSE指令时延

    PAUSE Latency in Skylake Microarchitecture PAUSE指令通常用于软件线程中,这些线程运行在一个处理器核的两个逻辑处理器中,等待某个锁被释放.这种短小的等待循 ...

  4. Intel® Nehalem/Westmere架构/微架构/流水线 (7) - 存储转发增强

    Store Forwarding Enhancement 当一个读存操作紧跟在一个写存操作后,如果这两个操作访问同一个存储器地址,在符合转发条件的情况下,处理器可以直接将写存操作的数据发送给读存操作: ...

  5. Intel(R) 处理器产品架构/微架构对照表

    Intel(R) 处理器与微架构对照表 2020/12/23:更新至IceLake/TigerLake微架构 2019/07/09:更新至 2nd Generation Intel® Xeon® Sc ...

  6. Pentium M处理器架构/微架构/流水线(1) - 流水线概述

    Intel® Pentium® M Processor 与Intel NetBurst微架构类似,Intel Pentium M处理器微架构 的流水线也包括3个主要部分: 有序发射前端 乱序超标量执行 ...

  7. Intel Skylake (Client) 架构/微架构/流水线 (2) - 前端

    The Front End 相比起前代,Skylake  Client微架构的前端做了如下增强: 传统的译码流水线可以每周期译码出5条微指令,前代是4条微指令. 译码后微指令缓存(DSB,即Decod ...

  8. Intel Skylake (Client) 架构/微架构/流水线 (3) - 乱序执行引擎

    The Out-of-Order Execution Engine 注:下面这个对比实际上来自与Skylake Server微架构,不知道是否适用于Skylake Client微架构,放在这里供参考. ...

  9. Intel Skylake (Server) 架构/微架构/流水线 (2) - 体系结构新特性

    Intel Skylake Server微架构引入了如下的新特性(某些特性可能不是全系处理器标配),允许程序员为应用程序优化性能和能耗. 处理器核基于Intel Skylake Server微架构,这 ...

最新文章

  1. 人,是否应该不要去好高骛远
  2. Java 如何有效地避免OOM:善于利用软引用和弱引用
  3. NorthWest University - Medical Engineering
  4. 如何从Windows远程上传文件到Linux(例如CentOS 7)
  5. 【华为云技术分享】弹性负载均衡服务助力企业应对高并发流量冲击
  6. [转]查看linux服务器硬盘IO读写负载
  7. Java语言的Hook实现
  8. python中的is和==
  9. MYSQL 查看表定义的 4 种方法
  10. CV领域的国际国内期刊会议介绍
  11. OSPFv3报文格式与作用分析
  12. 传感器技术(徐科军 第四版)第四章:光电式传感器
  13. 手把手教你用原生js写一个文字提示框
  14. php提取网页mp3,怎样提取网页视频中的音频文件
  15. MTK-EIS电子防抖-gyro校准
  16. 【Android】小白进阶之回调监听机制listener
  17. R 多变量数据预处理_R语言常用统计方法包+机器学习包(名称、简介)
  18. JZOJ-senior-5934. 【NOIP2018模拟10.29】列队
  19. Grin币交易代码分析
  20. 2016-04-13T16:00:00.000Z时间格式转换(时差)

热门文章

  1. 怎么将chatGPT集成到微信群聊
  2. 利用AlarmManager完成精准的轮询
  3. 大学物理光学阶段测试重点题型
  4. 口袋之旅html5超强账号,口袋之旅H5
  5. 盒子卡在android正在升级,手机开机一直显示android正在升级怎么处理
  6. These are the support and errata files for titles formerly published by Wrox Press Limited.
  7. 小米路由器mini开启SSH
  8. 【电力电子】【2018】数字标牌的能量采集设计与实现
  9. 华中师范大学微型计算机技术,许静芳-华中师范大学计算机学院
  10. 细思极恐,原来12306架构这么牛逼