1.2.2存储结构:Cache--高速缓存

news2024/11/17 13:36:09

1.2.2存储结构:Cache--高速缓存

  • Cache--高速缓存(相联存储器)
    • Cache特点
    • Cache改善系统性能局部性原理

请添加图片描述

Cache–高速缓存(相联存储器)

CPU中的寄存器和内存对比的话,其容量和速度差距是非常大的,因此在这种速度容量不匹配的情况下,在二者之间插入了一个折中的存储器,速度和容量是二者折中,从而解决CPU和内存速度容量不匹配的问题,这就是Cache的来源

Cache也叫做高速缓存,我们目前在软考体系中,缓存只了解CPU和内存之间的缓存。而每一级结构或者每两级及结构都是可以去插入一个缓存的,但是目前考试所涉及的一般指CPU和内存之间的缓存——高速缓存,大小级别和主存不能比,主存目前主流的是16G,而Cache的单位是M。

Cache特点

  • Cache的功能:提高CPU数据输入输出的效率,突破冯·诺依曼瓶颈,即CPU与存储系统间数据传送带宽限制。
  • 在计算机的存储系统体系中,Cache访问速度最快的层次(是除了寄存器之外最快的,而寄存器划分在CPU里,因此单提到存储系统体系,Cache是最快的)。
  • Cache对程序员来说是透明的,Cache相关的一些地址、映射关系都是由硬件直接完成的,与程序员无关。
  • 使用Cache改善系统性能的依据是程序的局部性原理,包括时间局部性和空间局部性

Cache改善系统性能局部性原理

  • 时间局部性:指程序中的某条指令一旦执行,不久以后该指令可能再次执行,典型原因是由于程序中存在着大量的循环操作
  • 空间局部性:指一旦程序访问了某个存储单元,不久以后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定的范围内,其典型情况是程序顺序执行。比如读取连续的数组A1,将所有数组读到Cache中,然后你下一步操作可能是读取A2,这样就不需要再次从内存中获取数据,而是直接在Cache中读取,速度会比内存快
  • 工作集理论:工作集是进程运行时被频繁访问的页面集合

如果以h代表对Cache的访问命中率,t1表示Cache的周期事件,t2表示主存储器周期时间,以读操作为例,使用“Cache+主存储器”的系统的平均周期为t3,则:
t 3 = h × t 1 + ( 1 − h ) × t 2 t3=h×t1+(1-h)×t2 t3=h×t1+(1h)×t2
其中,(1-h)又称为失效率(未命中率)。

Cache的访问命中率一般在90%以上,Cache的访问命中率与Cache的替换算法有关系,这里容易误导,
比如说算法的时间复杂度是影响Cache命中率的主要原因,这句话是不对的

时间复杂度最多是影响时间效率,而关键原因是Cache的替换算法,而不是它其中的某一项,可能是很多项。
比如追女生,把你拒绝了,它拒绝的是你这个人,换一个不同身高的可能答应了,换一个不同发型的也可能答应了,所以这个结果不是说身高和发型导致的,是人的问题,不能说是某个因素的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/186213.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构 - 学习笔记 - 红黑树

数据结构 - 学习笔记 - 红黑树定义简介知识点1. 结点属性2. 前驱、后继3. 旋转查找插入父结点为黑色父结点为红色1. 有4种情形只需要变色(对应234树4结点)1.1. 变色实现平衡1.2. 递归调整颜色2. 有4种情形需要旋转 变色(对应234树3结点&…

[JavaWeb]CSS

目录1. CSS语法1.1 常用样式-字体颜色1.2 常用样式-边框border1.3 常用样式-字体样式1.4 常用样式-超链接去下划线1.5 常用样式-列表去除修饰2.CSS 使用三种方式2.1 在标签的 style 属性上设置 CSS 样式2.2 在head 标签中,使用style 标签来定义需要的CSS样式2.3 把 CSS 样式写成…

线程的几种状态转换

线程在一定条件下,状态会发生变化。线程一共有以下几种状态: 1、新建状态(New):新创建了一个线程对象。 2、就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于“可运行线程池…

【头歌】顺序栈的基本操作及应用

第1关:顺序栈的基本操作任务描述本关任务是实现顺序栈的基本操作函数,以实现判断栈是否为满、是否为空、求栈元素个数、进栈和出栈等功能。相关知识栈的基本概念栈是一种特殊的线性表,其特殊性体现在元素插入和删除运算上,它的插入…

Sentry SDK使用(Vue/Browser JS/Laravel)

本文介绍通过Vue/Browser JS/Laravel三个平台对接Sentry SDK。1.在vue中使用这是入门指引,为了了解更多,请查看完整文档。为了收集错误信息和采集性能数据,需要安装以下两个包:sentry/vue(Sentrys Vue SDK)sentry/tracing(instrum…

【网络安全】Wireshark过滤数据包分析TCP三次握手

利用Wireshark分析TCP三次握手和四次挥手一、安装Wireshark二、界面介绍1. 网卡类型2. 首页功能2.1 按钮界面2.2 数据包列表2.3 数据包详细信息列表3. Wireshark过滤器3.1 设置数据抓取选项3.2 显示过滤器3.3 过滤关系3.4 复合过滤表达式3.5 常见用显示过滤需求及其对应表达式3…

IDaaS 如何帮助中小微企业(SMB)赢得市场先机|身份云研究院

数字化的本质是生产关系、生产要素的重构,目的是通过数字化技术释放更多生产力。数据是数字化变革中最重要的生产要素,而开发者则是数字世界中最重要的劳动者。对于企业来说,如何将数据转化成企业重要的生产资料以及如何提升开发者的效率为企…

机器学习算法竞赛实战--2,问题建模

目录 一,赛题理解 1,赛题理解 2,数据理解: 3,评价指标(分类和回归) 思考练习 当参赛者拿到竞赛题目的时候,首先应该考虑的事情就是问题建模,同时完成基线模型的管道…

如何备考2023年高级网络规划设计师?

网络规划设计师是软考高级考试科目之一,也是比较难的科目,据官方数据统计网规每年的通过率很低,而且每年只有下半年11月份考一次,如果是直接裸考,估计很悬哦~ 但是你参加考试获得证书的过程就是一个学习网络规划系统知…

一文揭晓,我是如何在Linux中查找自如

未来已来,只是不均衡地分布在当下 大家好,我是菜农,欢迎来到我的频道。 本文共 2187字,预计阅读 10 分钟 用过 Linux 的小伙伴都知道,在Linux系统中包含着大量的文件,绝大部分情况下,我们都是…

react hooks 中使用 Echarts图表中遇到的问题及相关配置

前言 项目开发中,需要做一个报表功能,看了下UI图,初步定下使用 echarts,不过之前使用 echarts 都是在 Vue2 和 Vue3 框架下开发,第一次使用 react-hooks 开发 echarts,将流程及一些 相关配置 写个随笔记录…

没有开发经验的程序员,怎么快速学习进入工作?

今天在群里,Ace老师遇到一位没有开发经验的同学,他的情况是这样的。 问题 Ace老师: 有一些伙伴,我现在真的没有想到太好的方法去教他,我跟大家讲一下他目前的情况,你们有经验的来和他说说这样的情况应该怎…

操作系统权限提升(三)之Windows系统内核溢出漏洞提权

系列文章 操作系统权限提升(一)之操作系统权限介绍 操作系统权限提升(二)之常见提权的环境介绍 注:阅读本编文章前,请先阅读系列文章,以免造成看不懂的情况!!! Windows系统内核溢出漏洞提权介绍 溢出提…

五、环境的搭建

1、配置用户信息 以下操作是用终端模拟器Cmder,这个工具比较便捷,比如需要粘贴,点击一下鼠标右键就粘贴了。如果不想下载这个工具,也可以在终端操作(打开终端快捷键:Win R,输入cmd)。 (1)查看git 打开C…

Recast-Detour看这里就够了!

目录一、 Recast生成(一) 概述1. 简介(二) 生成过程1. 体素化2. 区域3. 轮廓4. 生成凸多边形5. 详细三角形(三) 配置1. 可配置参数2. 数据结构(四) 项目应用1. CS体系方案…

2023最新前端面试题3(持续更新)

46、HTML语义化 HTML 语义化就是让页面内容结构化,它有如下优点 1、易于用户阅读,样式丢失的时候能让页面呈现清晰的结构。 2、有利于 SEO,搜索引警根据标签来确定上下文和各个关键字的权重。 3、方便其他设备解析,如盲人阅读器根…

【Pytorch项目实战】之迁移学习:特征提取、微调、特征提取+微调、雾霾清除

文章目录迁移学习(Transfer Learning)方法一:特征提取(Feature Extraction)方法二:微调(Fine Tuning)(一)实战:基于特征提取的迁移学习&#xff0…

2023第三方应用苹果电脑磁盘读写工具Tuxera NTFS

今天,小编要来分享的是Mac下一款实用的NTFS读写软件——Tuxera NTFS,我们都知道OS X默认是不支持NTFS格式写入的,对于很多使用U盘或移动硬盘写操作的朋友来说非常的不便。而Tuxera NTFS很好的解决了这个问题。小子这次带来的是2023版本。 Tu…

kali入侵电脑

kali入侵电脑 注意:本文仅用于教学目的 1 kali制作exe控制电脑(msfvenom) kali是黑客常用的系统,里面集成了很多的攻击软件,这里我给大家演示一种使用kali制作.exe文件来控制自己电脑的方式。 msfvenom a Metasploit s…

Vue2 和Vue 3的区别

Vue 2 和 Vue 3的区别 1.双向数据绑定原理不同 Vue2 的双向数据绑定是利用ES5的一个APIObject.definePropert() 对数据进行劫持,结合发布订阅模式的方式来实现的。 Vue3 中使用ES6的Proxy API对数据代理。 Vue3 使用数据代理的优势有以下几点:1&#x…