怎么处理 美国网站dns无法解析/东莞网站推广大全
目录
深入了解缓存内存
缓存的重要性
游戏中的存储需求与主内存
虚拟内存和按需分页
现代系统中的多级缓存
缓存级别的大小与速度
缓存相关的术语
缓存命中与未命中
页面命中与缺页
局部性原理
结语
深入了解缓存内存
大家好,欢迎来到今天的课程。上节课,我们学习了06《内存接口:解答往年试题》计算机组成与体系结构 系列课。今天我们将深入了解缓存内存。但在深入之前,我们先来理解一下它的重要性。现在让我们开始学习吧。
缓存的重要性
在之前的讨论中,当我们谈到命中率或命中比时,我们看到在一个包含100条指令的程序代码中,有80条被带入主存储器。你可能会想,为什么我们不直接将整个100条指令的代码都放入内存中呢?让我通过一个更现实的例子来说明这个问题。
游戏中的存储需求与主内存
- 游戏示例:GTA 5、使命召唤:无限战争、现代战争2019重启版、杀手2(2018年重启版)。
- 存储空间:这些游戏的存储需求几乎达到了100GB,现代战争2019重启版甚至需要超过200GB的存储空间。
- 主内存需求:
- GTA 5:4GB
- 使命召唤系列(无限战争/现代战争):8GB
- 杀手2:16GB
虚拟内存和按需分页
这是因为我们的操作系统提供了虚拟内存和按需分页的概念。当我们在玩这些游戏或者从技术上讲,当处理器正在执行这些游戏的代码时,它们并不需要一次性地加载全部100GB的代码。这就是它的美妙之处。
正因为如此,即使主内存相对较小,我们仍然可以毫无问题地运行这些游戏。
为了更好地理解这个概念,我们用了仅100条指令的代码段作为例子。
现代系统中的多级缓存
现在让我们谈谈缓存。
为了便于理解,在之前的讨论中我提到缓存内存作为一个单一单元。
但准确地说,现代系统通常有多级缓存。如今的系统架构中,一般使用三级缓存:L1、L2 和 L3 缓存。
- L1缓存:自诞生以来就内置于处理器本身。
- L2缓存:最初集成在主板上,但现在也成为了处理器的一部分。
- L3缓存:嵌入在处理器中,由处理器的所有不同核心共享。
随着技术的进步,我们见证了多核处理器的兴起,如双核、四核乃至八核等。这些术语描述了微处理器内部核心的数量,是现代微处理器分类中的一个重要方面。在计算机体系结构中,这样的设计使得处理器能够同时处理多个任务或线程,从而显著提升了计算效率和性能。
自L1缓存诞生以来,它就一直内置于处理器本身之中,作为最接近CPU核心的数据存储区域,提供了最快的访问速度。随着技术的发展,L2缓存被引入以进一步提升性能。最初,L2缓存通常是安装在主板上的独立组件;然而,随着时间推移,为了提高效率,L2缓存也逐渐集成到了处理器内部。
如今,在多核处理器架构中,每个核心都拥有自己的L1和L2缓存,这有助于减少数据访问延迟并提高单个核心的工作效率。
至于L3缓存,它同样嵌入在处理器芯片之内,但与L1和L2不同的是,L3缓存由所有核心共同使用。这种共享的设计,旨在优化跨核心的数据交换,对于需要频繁访问同一数据集的应用程序来说尤为重要。
通过了解这些缓存级别及其作用,我们可以更好地理解现代处理器是如何通过多层次缓存系统,来实现高效数据管理和加速计算过程的。
缓存级别的大小与速度
- L1缓存:最小但最快。
- L2缓存:用于存储访问频率次高、但因空间限制而无法纳入L1缓存的数据。
- L3缓存:最大,被称为共享缓存。
在大小方面,L1是最小的,但它也是所有缓存中最快的。 L2缓存紧随其后,用来存储那些访问频率次高、但因空间限制而无法纳入L1缓存的数据。 最后,L3缓存是最大的,也被称为共享缓存。
希望你现在对不同级别的缓存有了清晰的理解。 在之后的讨论中,为了简化起见,我们大多假设只有一个缓存。 不过,在解释与缓存级别相关的数值问题时,我会提供各级别的详细说明。
缓存相关的术语
现在让我们了解一些与缓存相关的术语。
缓存命中与未命中
- 缓存命中:如果处理器能够在缓存中找到所需的信息,所需的时间称为命中延迟。
- 标签目录:用来确定所需信息是否存在于缓存中的一种特定数据结构。
- 缓存未命中:如果信息不在缓存中,则处理器将在下一级内存即主内存中寻找该信息,并将其带回。这段时间总称作未命中延迟。
第一个术语是缓存命中。 在执行过程中,如果处理器能够在缓存中找到所需的信息,我们就称之为缓存命中。 这个过程所需的时间称为命中延迟。 这里,处理器使用一种特定的数据结构——标签目录【Tag Directory】,来确定所需信息是否存在于缓存中。 如果信息不在缓存中,也就是说信息缺失,我们称之为缓存未命中。 在这种情况下,正如前面所讨论的,处理器将在下一级内存,即主内存中寻找该信息,并将其带回。 同时,也会将信息放置在缓存中。 这段时间总称作未命中延迟。
页面命中与缺页
- 页面命中:如果信息在主内存中找到。
- 缺页:如果信息也不在主内存中,这种情况称为缺页。
- 缺页服务时间:操作系统会在辅助存储器中查找信息,并将其带回主内存的过程所需的时间。
顺便提一下,如果信息也不在主内存中,这种情况称为缺页。 如果找到了信息,我们称之为页面命中。 在缺页的情况下,操作系统,作为管理主内存和辅助存储器之间通信的角色,会在层次结构的最后一层,也就是辅助存储器中查找信息,并将其带回主内存。 整个过程称为缺页服务,完成这一过程所需的时间称为缺页服务时间。
我们已经知道,相对于其他数据而言,访问频率极高的信息通常会被保留在缓存中。 这种根据访问频率优先化主内存部分以加载到缓存中的做法,是基于局部性原理。
局部性原理
- 空间局部性:如果处理器引用了某个内存位置,那么附近的位置在未来很可能会被引用。
- 时间局部性:如果某个内存位置被引用过,那么它很可能在未来再次被引用。
简单来说,有两种方法可以帮助处理器决定应该将主内存中的哪些数据放在缓存中。 第一种方法基于空间局部性。 这意味着在某个时刻,如果处理器引用了某个内存位置,那么附近的位置在未来很可能会被引用。 第二种方法基于时间局部性。 这意味着如果某个内存位置被引用过,那么它很可能在未来再次被引用。 这个知识点,在研究缓存替换策略时会更加清晰。
结语
好了,这就是本次课程的内容。
我想既然我们已经学到了缓存内存的组织方式,接下来探讨不同的缓存映射技术以及更深入地理解缓存和主内存之间的交互就会更容易些。
期待下次再见。谢谢大家阅读。
相关文章:

07《缓存》计算机组成与体系结构 系列课
目录 深入了解缓存内存 缓存的重要性 游戏中的存储需求与主内存 虚拟内存和按需分页 现代系统中的多级缓存 缓存级别的大小与速度 缓存相关的术语 缓存命中与未命中 页面命中与缺页 局部性原理 结语 深入了解缓存内存 大家好,欢迎来到今天的课程。上节课…...

Java个人博客系统项目文档
项目名称 Java个人博客系统 项目概述 该博客系统是一个多功能的Java应用程序。该系统支持用户发布新文章、浏览他人文章、管理个人文章收藏和删除不再需要的文章。通过该博客系统,用户可以享受一个安全、便捷的在线写作和阅读体验。 运行环境 编程语言࿱…...

如何手动设置ubuntu服务器的ip、子网掩码、网关、DNS
在 Ubuntu 服务器上手动设置 IP 地址、子网掩码、网关和 DNS,通常有两种方式:使用传统的 ifconfig 命令和配置文件,或者使用现代的 netplan 配置方式(对于 Ubuntu 17.10 及以后版本,netplan 是默认的网络配置工具&…...

SVN clean up失效的一种解决办法
1、进入.svn 2、进入wc.db数据库 sqlite3.exe wc.db sqlite> select * from WC_LOCK; 若有输出则可采用下面的方式来清理 a、delete from WC_LOCK; b、如果删除失败就采用丢弃并重新创建WC_LOCK表的方式清理 drop table WC_LOCK; create table WC_LOCK ( wc_id INTEGER…...

S4 UPA of AA :新资产会计概览
通用并行会计(Universal Parallel Accounting)可以支持每个独立的分类账与其他模块集成,UPA主要是为了支持平行评估、多货币类型、财务合并、多准则财务报告的复杂业务需求 在ML层面UPA允许根据不同的分类账规则对物料进行评估,并…...

第30天:安全开发-JS 应用NodeJS 指南原型链污染Express 框架功能实现审计0
时间轴: 演示案例: 环境搭建-NodeJS-解析安装&库安装 功能实现-NodeJS-数据库&文件&执行 安全问题-NodeJS-注入&RCE&原型链 案例分析-NodeJS-CTF 题目&源码审计 开发指南-NodeJS-安全 SecGuide 项目、 环境搭建-NodeJ…...

关于单片机的原理与应用!
成长路上不孤单😊😊😊😊😊😊 【14后😊///计算机爱好者😊///目前正在学习C😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于单片…...

什么是节点嵌入向量
节点嵌入向量是图神经网络中对节点信息进行表示的一种方式。它是将节点的各种属性、特征以及其在图结构中的位置关系等信息,通过某种数学变换映射到一个低维向量空间中的向量。 在图神经网络中,节点通常具有多种属性,如在社交网络中用户节点可…...

青海摇摇了3天,技术退步明显.......
最近快手上的青海摇招聘活动非常火热,我已经在思考是否备战张诗尧的秋招活动。开个玩笑正片开始: 先说一下自己的情况,大专生,20年通过校招进入杭州某软件公司,干了接近4年的功能测试,今年年初,…...

url_launcher三方包的用法
文章目录 1 概念介绍2 使用方法3 示例代码我们在上一章回中介绍了包管理相关的内容,本章回中将介绍如何使用url_launcher包.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里介绍url_launcher包主要用来打开Url中的内容,Url可以是电话号码,网址,邮箱等内容。如…...

Python 【图像分类】之 PyTorch 进行猫狗分类功能的实现(Swanlab训练可视化/ Gradio 实现猫狗分类 Demo)
Python 【图像分类】之 PyTorch 进行猫狗分类功能的实现(Swanlab训练可视化/ Gradio 实现猫狗分类 Demo) 目录 Python 【图像分类】之 PyTorch 进行猫狗分类功能的实现(Swanlab训练可视化/ Gradio 实现猫狗分类 Demo) 一、简单介绍 二、PyTorch 三、CNN 1、神经网络 2、卷…...

springboot371高校实习管理系统(论文+源码)_kaic
毕 业 设 计(论 文) 题目:高校实习管理系统的设计与实现 摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解…...

Elasticsearch面试内容整理-面试注意事项
在准备 Elasticsearch 面试时,除了掌握技术知识外,还需要注意如何有效展示你的技能和经验。以下是一些 Elasticsearch 面试的注意事项和建议: 掌握基础概念 在面试中,面试官通常会首先评估你对 Elasticsearch 基础概念的理解,包括集群架构、分片、副本、节点类型等。这些是…...

Python学习第十五天--魔术方法
魔法方法就是可以给你的类增加魔力的特殊方法,它们总被双下划线所包围,像这种格式:"__方法名__",这些方法很强大,充满魔力,可以让你实现很多功能。 使用dir()查看类的所有属性和方法 class A:passprint(di…...

计算机的错误计算(一百七十二)
摘要 探讨 MATLAB 对于算式 的计算误差。 例1. 在 MATLAB 中计算 的值。 直接贴图吧: 这样,MATLAB 的输出中只有3位正确数字,有效数字的错误率为 (16-3)/16 81.25% . 因为16位的正确输出为 0.2971242332737277e-18(ISReals…...

C/C++每日一练:合并K个有序链表
本篇博客将探讨如何 “合并K个有序链表” 这一经典问题。本文将从题目要求、解题思路、过程解析和相关知识点逐步展开,同时提供详细注释的代码示例。 链表(Linked List) 链表是一种线性数据结构,由一系列节点(Node&…...

STM32实现HC595控制三位数码管(内含程序,PCB原理图及相关资料)
目录 任务要求 一、595的作用 二、电路设计 三、STM32选型 四、cubeMX配置 五、代码实现 六、实现效果(显示12.8) 任务要求 使用两个595实现对三位数码管控制,实现三位值显示。 一、595的作用 74HC595的作用是将串行数据进行并行显示…...

《沉积与特提斯地质》
《沉积与特提斯地质》为中国地质调查局主管,中国地质调查局成都地质调查中心(西南地质科技创新中心)主办的地学类学术期刊。 《沉积与特提斯地质》创刊于1981年,创刊名为《岩相古地理研究与编图通讯》,后更名为《岩相…...

Android studio 签名加固后的apk文件
Android studio打包时,可以选择签名类型v1和v2,但是在经过加固后,签名就不在了,或者只有v1签名,这样是不安全的。 操作流程: 1、Android studio 对项目进行打包,生成有签名的apk文件ÿ…...

Brain.js(二):项目集成方式详解——npm、cdn、下载、源码构建
Brain.js 是一个强大且易用的 JavaScript 神经网络库,适用于前端和 Node.js 环境,帮助开发者轻松实现机器学习功能。 在前文Brain.js(一):可以在浏览器运行的、默认GPU加速的神经网络库概要介绍-发展历程和使用场景中&…...

关于Vscode配置Unity环境时的一些报错问题(持续更新)
第一种报错: 下载net请求超时(一般都会超时很正常的) 实际时并不需要解决,它对你的项目毫无影响 第二种报错: .net版本不匹配 解决:(由于造成问题不一样,所以建议都尝试一次&…...

MacOS 配置github密钥
MacOS 配置github密钥 1. 生成GitHub的SSH密钥对 ssh-keygen -t ed25519 -C "xxxxxxx.com" -f ~/.ssh/id_ed25519_github 其中 xxxxxxxxxxx.com 是注册github、gitee和gitlab的绑定账号的邮箱 -t ed25519:生成密钥的算法为ed25519(ed25519比rsa速度快&…...

从0开始学PHP面向对象内容之常用设计模式(策略,观察者)
PHP设计模式——行为型模式 PHP 设计模式中的行为模式(Behavioral Patterns)主要关注对象之间的通信和交互。行为模式的目的是在不暴露对象之间的具体通信细节的情况下,定义对象的行为和职责。它们常用于解决对象如何协调工作的问题ÿ…...

前端 如何用 div 标签实现 步骤审批
在前端实现一个步骤审批流程,通常是通过 div 标签和 CSS 来构建一个可视化的流程图,结合 JavaScript 控制审批的状态变化。你可以使用 div 标签创建每一个步骤节点,通过不同的样式(如颜色、边框等)表示审批的不同状态&…...

【大数据技术基础 | 实验十四】Kafka实验:订阅推送示例
文章目录 一、实验目的二、实验要求三、实验原理(一)Kafka简介(二)Kafka使用场景 四、实验环境五、实验内容和步骤(一)配置各服务器之间的免密登录(二)安装ZooKeeper集群(…...

SpringAi整合大模型(进阶版)
进阶版是在基础的对话版之上进行新增功能。 如果还没弄出基础版的,请参考 https://blog.csdn.net/weixin_54925172/article/details/144143523?sharetypeblogdetail&sharerId144143523&sharereferPC&sharesourceweixin_54925172&spm1011.2480.30…...

为什么爱用低秩矩阵
目录 为什么爱用低秩矩阵 一、定义与性质 二、区别与例子 为什么爱用低秩矩阵 我们更多地提及低秩分解而非满秩分解,主要是因为低秩分解在数据压缩、噪声去除、模型简化和特征提取等方面具有显著的优势。而满秩分解虽然能够保持数据的完整性,但在实际应用中的场景较为有限…...

React 自定义钩子:useOnlineStatus
我们今天的重点是 “useOnlineStatus” 钩子,这是 React 自定义钩子集合中众多精心制作的钩子之一。 Github 的:https://github.com/sergeyleschev/react-custom-hooks import { useState } from "react" import useEventListener from &quo…...

uniapp 小程序 监听全局路由跳转 获取路由参数
uniapp 小程序 监听全局路由跳转 获取路由参数 app.vue中 api文档 onLaunch: function(options) {let that this;let event [navigateTo, redirectTo, switchTab, navigateBack];event.forEach(item > {uni.addInterceptor(item, { //监听跳转//监听跳转success(e) {tha…...

12.02 深度学习-卷积
# 卷积 是用于图像处理 能够保存图像的一些特征 卷积层 如果用全连接神经网络处理图像 计算价格太大了 图像也被转为线性的对象导致失去了图像的空间特征 只有在卷积神经网络cnn的最后一层使用全连接神经网络 # 图像处理的三大任务 # 目标检测 对图像中的目标进行框出来 # 图…...