设为首页收藏本站
我的广告

     

 找回密码
 立即注册
薅羊毛,扫我就赚了!
查看: 512|回复: 0

[电脑常识] 缓存,怎么改变的电脑速度?

[复制链接]

  离线 

  • 打卡等级:女儿国探花
  • 打卡总天数:364
  • 打卡月天数:9
  • 打卡总奖励:5198
  • 最近打卡:2025-12-15 10:38:03

1075

主题

27

回帖

1万

积分

超级版主

积分
16606
发表于 2024-7-13 08:12:20 | 显示全部楼层 |阅读模式
星级打分
  • 1
  • 2
  • 3
  • 4
  • 5
平均分:0  参与人数:0  我的评分:未评
细心的朋友可能还会发现,如今无论是买CPU还是固态硬盘,缓存(Cache)扮演着至关重要的角色。“有缓”“大缓”成了很多朋友追求的目标,无论是AMD的X3D系列的惊人游戏表现还是旗舰SSD的高速存取,都离不开它。它是如何改变电脑速度的?
5 ?/ Z7 ^; h( ~$ U' L
/ C) \: R% _. \5 H让最常用的数据在最快的存储单元里
( _! f- d; V, O( q  S. h; s
9 Y% B, |( h% T9 e缓存是一种高速存储技术,用于存储最近访问的数据或当前最常用的指令,以加快对相同数据的后续访问速度。对于CPU而言,它本身是一种小容量但访问速度极快的存储器,通常位于处理器和主存储器也就是内存条之间。而对于固态硬盘或者机械硬盘,它位于主控芯片和存储颗粒、盘片之间。
" `3 f5 r" d) k/ n1 J* ]
% x9 B% F  m+ K5 X! |当处理器/硬盘需要读取或写入数据时,首先会检查缓存中是否已经存在该数据。如果存在,即发生了缓存命中(Cache Hit),处理器可以直接从缓存中快速获取数据;如果不存在,即发生了缓存未命中(Cache Miss),处理器则需要从较慢的内存条的“数据库”中读取数据,并将其加载到缓存中以供后续使用。& I. Q$ k. [7 A2 G! P# D

9 k& [' Y* V; L4 X% w( E然后是执行写策略:缓存系统可以采用不同的写策略,如写直通(Write-Through)和写回(Write-Back)。写直通策略在数据被写入缓存的同时也会写入主存储器,而写回策略则仅在数据被替换出缓存时才写回主存储器。% D& l( u5 m  r3 [
- K( ]% h4 R* ^' o0 s) O- y7 J
另外,缓存运作,还涉及到所谓替换算法:当缓存已满且需要加载新数据时,需要决定哪个数据块被替换。常见的替换算法包括最近最少使用(LRU)和随机替换等。不同的替换算法,对于缓存的命中率有非常高的影响。) p) }6 r# e3 i" S, V& V: t1 W
. V+ n! K- Y2 R' G
而缓存的设计,还基于两个重要的局部性原理:时间局部性(Temporal Locality)和空间局部性(Spatial Locality)。时间局部性指的是一旦访问过某个数据,不久后很可能再次访问该数据;空间局部性则是指如果访问了某个内存位置,那么与其相邻的内存位置也很可能被访问。+ ]% d" ~) S& o+ J2 q4 k3 C

6 R0 z5 f( r9 e' q* M8 P, Z  f缓存在哪里?
" d6 Q& ~7 |) l2 e, G; z0 ?
( Z' P8 `+ ~2 l, pCache的硬件芯片,一般是超高速的SRAM或者DRAM。如今,CPU的Cache已经集成到了封装之内,很难看到真容。不过在固态硬盘或者硬盘上,还能在PCB上看到实体的Cache芯片。
# H* j3 q4 q  l
7 S0 J% o$ g% n另外,在早期的电脑中,Cache就更为明显了。在“奔腾”芯片以前,高端的386、486等主板和一般主板的区别,就是拥有板载的Cache芯片。下图就是一个486主板上的Cache芯片阵列。
9 {1 e6 Y9 G1 m  U6 v( r' F$ ]3 p, a
9 W9 q2 Q: e) a/ N缓存的类型有哪些?
/ @$ X; s" `( [( p& [  Q1 v6 h& N5 J
缓存根据其映射方式可以分为以下几种类型:1 x0 w9 |: c6 z5 X; ~, W
% W7 g  f4 t$ p' y
1.直接映射缓存(Direct Mapped Cache):在这种类型的缓存中,每个缓存位置都有一个固定的地址范围与之对应。当一个数据块被加载到缓存中时,它只能被放置在预先确定的位置。这种设计简单,但可能会导致缓存冲突。, r" D, B4 k. ?. B
2.全关联缓存(Fully Associative Cache):与直接映射缓存不同,全关联缓存允许任何数据块被存储在任何位置。这种灵活性可以减少缓存冲突,但实现起来成本较高。
8 g: v1 r: {$ T3. 集合关联缓存(Set Associative Cache):集合关联缓存是直接映射和全关联缓存的折中方案。它将缓存分为多个集合,每个集合可以存储多个数据块。这种设计在减少缓存冲突和成本之间取得了平衡。, J# A8 }6 h& N+ `/ z
4. 扇区映射(Sector Mapping):这种缓存设计将内存和缓存划分为固定大小的块,称为扇区。当一个数据块被加载到缓存中时,它可以被放置在任何扇区的相应位置。这种设计利用了数据访问的局部性,减少了标签的存储需求。* i) B6 B% G  S
3 w" ]" E7 Z- T$ Z6 ^4 c: u
减少重复满速加载=快
8 `( h  B. x! [. ]$ v
9 N* f( g% u+ O" U  n7 V0 Y缓存技术由于减少了最常用的数据和指令在慢速存储器(内存条、硬盘)上的重复加载和慢速加载,因此就极大的提高了使用它的部件的工作效率,所以在电脑中应用很广。$ `& z+ K" c- ~% V$ E' j, u

0 B. q- v6 R7 N! ?  T+ _! x1.处理器缓存:现代处理器通常包含多级缓存,如L1、L2和L3缓存,以提高数据处理速度。L1 缓存是内置于处理器中的缓存,是计算机中最快且最昂贵的缓存。L1 缓存存储需要执行的最关键的文件,是处理器在执行指令时首先查看的内容。L2 缓存不如 L1 缓存快,但只是稍微慢一些,是计算机在执行指令时查看的第二层常用数据和指令集中地方。L3缓存容量最大也最慢,但仍然比内存条快很多,它就存储了相当多的当前应用程序的高频访问内容。9 l7 m7 i& ~$ D7 i- V4 _3 E

# x! Z# ], Z5 ~5 L3 c因此,有着巨大L3缓存的AMD X3D系列CPU的游戏性能好,原因就在于此。% m# F) O/ d9 B- n4 _
" I) b* C  m3 u; C! A$ f
而在90年代的电脑中,由于集成度低,CPU往往只有L1 Cache,而L2 Cache则多交给前面说的主板上的SRAM Cache模组,然后通过本地PCI总线和CPU、内存进行数据交换。
2 {! `1 {- M# I) |
- e' r0 t4 H7 H8 D2.内存缓存:操作系统使用内存缓存来存储频繁访问的数据,减少对磁盘的访问次数。所谓的“虚拟磁盘”,就是使用内存条上的颗粒空间作为“磁盘空间”,提高操作系统的工作效率。
. R# W8 m- F  b6 ?6 g% ]6 L/ r& z) j
* ^' j$ o4 X' y* O. j3. 磁盘缓存:磁盘缓存通过将最近访问的数据存储在RAM中,提高了磁盘的读写性能。最常见的就是SSD上的DRAM硬件缓存。
+ p# z! S0 {; x2 \, B
5 V) O( }0 K1 U7 b% z  B) k4.网络缓存:网络缓存,如代理服务器和CDN(内容分发网络),通过在不同的网络上的服务器上存储热门内容的副本,来减少网络流量和提高访问速度。% Q% p# X/ P! K, P9 P! r
$ B  \3 s8 {0 ^9 H1 ?; T& W: L, a
5.Web浏览器缓存:浏览器缓存通过存储网页和资源的副本,加快了网页的加载速度(例如网页的固定栏目资源),并减少了重复下载的需要。
' N  P2 M* f* }8 F" m+ @7 B& x$ U2 C5 W7 N
随着技术的发展,缓存设计和应用将继续演变,以满足日益增长的性能需求。# L- r- A& A' T5 q

, k$ r4 K$ S, ?( p, V7 n/ F+ G当然你也可以直接拨打电话13101986181,让我帮你组装电脑,装机!
& Z. {: K7 Q* P7 a" b. z/ ^5 R; [2 }( R
! u! Z' u, K- V$ w
女儿国免责声明
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与女儿国享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和女儿国的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、本站所有带作者名的小说均收集于网络,版权归原作者所有,本站只提供整理校对排版
7、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
8、女儿国管理员和版主有权不事先通知发贴者而删除本文
贡献值排行榜:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表