问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

缓存什么意思?它的主要作用是什么?

发布网友 发布时间:2022-05-11 12:34

我来回答

3个回答

热心网友 时间:2023-10-12 13:59

首先我们来简单了解一下一级缓存。目前所有主流处理器大都具有一级缓存和二级缓存,少数高端处理器还集成了*缓存。其中,一级缓存可分为一级指令缓存和一级数据缓存。一级指令缓存用于暂时存储并向CPU递送各类运算指令;一级数据缓存用于暂时存储并向CPU递送运算所需数据,这就是一级缓存的作用(如果大家对上述文字理解困难的话,可参照下图所示)。

那么,二级缓存的作用又是什么呢?简单地说,二级缓存就是一级缓存的缓冲器:一级缓存制造成本很高因此它的容量有限,二级缓存的作用就是存储那些CPU处理时需要用到、一级缓存又无法存储的数据。同样道理,*缓存和内存可以看作是二级缓存的缓冲器,它们的容量递增,但单位制造成本却递减。需要注意的是,无论是二级缓存、*缓存还是内存都不能存储处理器操作的原始指令,这些指令只能存储在CPU的一级指令缓存中,而余下的二级缓存、*缓存和内存仅用于存储CPU所需数据。

根据工作原理的不同,目前主流处理器所采用的一级数据缓存又可以分为实数据读写缓存和数据代码指令追踪缓存2种,它们分别被AMD和Intel所采用。不同的一级数据缓存设计对于二级缓存容量的需求也各不相同,下面让我们简单了解一下这两种一级数据缓存设计的不同之处。
一、AMD一级数据缓存设计

AMD采用的一级缓存设计属于传统的“实数据读写缓存”设计。基于该架构的一级数据缓存主要用于存储CPU最先读取的数据;而更多的读取数据则分别存储在二级缓存和系统内存当中。做个简单的假设,假如处理器需要读取“AMD ATHLON 64 3000+ IS GOOD”这一串数据(不记空格),那么首先要被读取的“AMDATHL”将被存储在一级数据缓存中,而余下的“ON643000+ISGOOD”则被分别存储在二级缓存和系统内存当中(如下图所示)。

需要注意的是,以上假设只是对AMD处理器一级数据缓存的一个抽象描述,一级数据缓存和二级缓存所能存储的数据长度完全由缓存容量的大小决定,而绝非以上假设中的几个字节。“实数据读写缓存”的优点是数据读取直接快速,但这也需要一级数据缓存具有一定的容量,增加了处理器的制造难度(一级数据缓存的单位制造成本较二级缓存高)。
二、Intel一级数据缓存设计

自P4时代开始,Intel开始采用全新的“数据代码指令追踪缓存”设计。基于这种架构的一级数据缓存不再存储实际的数据,而是存储这些数据在二级缓存中的指令代码(即数据在二级缓存中存储的起始地址)。假设处理器需要读取“INTEL P4 IS GOOD”这一串数据(不记空格),那么所有数据将被存储在二级缓存中,而一级数据代码指令追踪缓存需要存储的仅仅是上述数据的起始地址(如下图所示)。

由于一级数据缓存不再存储实际数据,因此“数据代码指令追踪缓存”设计能够极大地降CPU对一级数据缓存容量的要求,降低处理器的生产难度。但这种设计的弊端在于数据读取效率较“实数据读写缓存设计”低,而且对二级缓存容量的依赖性非常大。

在了解了一级缓存、二级缓存的大致作用及其分类以后,下面我们来回答以下硬件一菜鸟网友提出的问题。
从理论上讲,二级缓存越大处理器的性能越好,但这并不是说二级缓存容量加倍就能够处理器带来成倍的性能增长。目前CPU处理的绝大部分数据的大小都在0-256KB之间,小部分数据的大小在256KB-512KB之间,只有极少数数据的大小超过512KB。所以只要处理器可用的一级、二级缓存容量达到256KB以上,那就能够应付正常的应用;512KB容量的二级缓存已经足够满足绝大多数应用的需求。

这其中,对于采用“实数据读写缓存”设计的AMD Athlon 64、Sempron处理器而言,由于它们已经具备了64KB一级指令缓存和64KB一级数据缓存,只要处理器的二级缓存容量大于等于128KB就能够存储足够的数据和指令,因此它们对二级缓存的依赖性并不大。这就是为什么主频同为1.8GHz的Socket 754 Sempron 3000+(128KB二级缓存)、Sempron 3100+(256KB二级缓存)以及Athlon 64 2800+(512KB二级缓存)在大多数评测中性能非常接近的主要原因。所以对于普通用户而言754 Sempron 2600+是值得考虑的。

反观Intel目前主推的P4、赛扬系列处理器,它们都采用了“数据代码指令追踪缓存”架构,其中Prescott内核的一级缓存中只包含了12KB一级指令缓存和16KB一级数据缓存,而Northwood内核更是只有12KB一级指令缓存和8KB一级数据缓存。所以P4、赛扬系列处理器对二级缓存的依赖性是非常大的,赛扬D 320(256KB二级缓存)与赛扬 2.4GHz(128KB二级缓存)性能上的巨大差距就很好地证明了这一点;而赛扬D和P4 E处理器之间的性能差距同样十分明显。

最后,如果您是狂热的游戏发烧友或者从事多媒*作的专业用户,那么具有1MB二级缓存的P4处理器和具有512KB/1MB二级缓存的Athlon 64处理器才是您理想的选择。因为在高负荷的运算下,CPU的一级缓存和二级缓存近乎“爆满”,在这个时候大容量的二级缓存能够为处理器带来5%-10%左右的性能提升,这对于那些要求苛刻的用户来说是完全有必要的。

热心网友 时间:2023-10-12 14:00

由于外围设备比如IO设备等的处理速度要低于系统cpu的处理速度,所以当系统向外围设备如IO设备输出数据时,先将数据输出到缓存,即缓冲存储器中,然后外围设备从缓存中取数据,在外设取得该数据期间,cpu就可以干其他事情而不用等待了。

热心网友 时间:2023-10-12 14:00

CPU有两级缓存,一级一般几十K,二级现在已经能有几M了,*就是去内存了,一级读取速度最快,由于CPU发展太快,存储不能满足需要,分级读取可以减少读取压力。缓存大要比频率大好,所以AMD频率一般较低但同频率性能高于INTEl
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
吃生大蒜好吗 吃生大蒜有什么好处呢 保字词语接龙两个字 建筑设计资质有哪些 iphone视频格式 男人说纠结是什么意思纠结是什么意思 古天乐的资料!!! 胆结石可以喝柠檬蜂蜜水吗 柠檬对结石有什么作用 胆结石可以吃柠檬吗 江西有哪些风景 缓存是什么?有什么用? 手机为什么要用缓存 Rain边看吃播边撸铁,看吃播能锻炼自己的意志力吗? 吃播猪蹄蹄筋都是从哪买的? 为什么看别人的吃播那么有劲,自己吃过但觉得并不怎么样 把三岁女孩喂到70斤的家长是什么心理? 苹果6plus16g换64g有影响吗?400值吗? iphone6plus能扩容吗 怎样把照片的彩色背景换成白色的 彩色背景怎样弄的 幕布剧彩色背景怎么弄出来的 校园歌曲 歌词什么十七岁 最后一次,17岁女生唱的原版 17岁的郑智化凭借这首悲伤情歌,出乎意料走红,你知道是哪首歌? 最后一次 十七岁女生 原唱谁有? 十七岁的雨季原唱是谁 功放双工器,什么是功放双工器 艾薇儿唱的seventeen原唱是谁 十七岁那年的雨季是谁唱的? 用刀剃毛,会使毛变粗吗? 消费时代男色经济崛起,这是一种什么样的现象? 比特币又涨疯了,市值重回1万亿美元,这到底是不是资本的韭菜游戏? 预约成功了还能取消吗 箐鹏教育的初级会计职称的课程学习效率怎么样? 和一个商务网站签一个建设网站的合同 网上请人建站是否需要签订合同? 狼斩会计的初级课程有人用过吗?效果如何? 教易有道的初级会计职称课程的老师讲的好吗? 箐鹏教育的初级会计职称课程好学吗? 云闪考的初级会计网课怎么样? 我是初中毕业 考二级建造师还需要啥条件 我今年37岁了 从事建造行业五年了 有安全员证 请高人指点 用同花顺怎么查询某只股票主要被哪些机构持有? 什么是肝功10项? 肝功能十项检查是哪十项?? 肝功能(10)项,血脂4项是指那些 一张银行卡可以同时绑定两个吗? 肝功能十项和肝功能生化检查是一种吗 在哪领取失业金 肝功十项 肝功12项包括哪些项目?