跑道加一条,速度翻一倍:内存通道的提速秘密


如果程序是一辆跑车,那么CPU就是引擎,内存就是油箱,而内存通道就是供满管路。如果管道太窄,油就跟不上,发动机就像嗷嗷待哺的孩子。可怜啊,就算再怎么嗷嗷叫也吃不饱,车自然也就跑不起来。

一、内存通道的类型

简单来说,内存通道就是CPU和内存之间的一条数据传输通道,它决定了CPU访问内存的速度。
在计算机的世界里,速度就是王道,慢一步,可能就错失了一个亿。
内存通道有单通道、双通道、四通道等多种类型。
在这里插入图片描述

1.1 单通道

在计算机发展的初期,内存都是单通道的。
单通道就像马路只有一排车道,虽然能走,但是得一个一个来。当多个进程同时请求访问内存时,很容易造成拥堵现象(带宽不足)。

注:内存带宽是指单位时间内CPU可以从内存中读取或写入的数据量。

1.2 多通道

为解决上述问题,多通道内存架构应运而生。
简单来说,就是在原有基础上增加了额外的数据传输线路,使得CPU可以同时与多个内存颗粒建立连接。
比如双通道就像是拓宽成了双排车道,哥俩儿可以并肩而行(并行处理),效率翻倍;四通道那就更厉害了,就像四排车道的高速公路,速度嗖嗖的。
多通道的优势主要有两方面:

  • 提高吞吐量:理论上讲,每新增一条通道就能使带宽翻倍。
  • 降低延迟:比如某个通道被占用,未被占用的通道仍可正常运作,从而减少了等待时间。

二、内存通道的工作原理

2.1 内存控制器

电脑支持几通道主要看内存控制器(Memory Controller),有几个内存控制器就能支持几个内存通道。
以双通道为例,就是有两个内存控制器,它们可独立工作,每个控制器控制一个内存通道。
CPU可分别通过两个内存通道寻址、读取数据,从而使内存的带宽增加一倍,数据存取速度也相应增加一倍。
根据集成位置不同,内存控制器可分为北桥芯片内置式和CPU内部集成式两种类型:

  • 北桥内置:这种方式历史悠久,曾经广泛应用于早期PC平台中。其优点在于结构相对简单、开发难度较低;缺点则是容易成为系统瓶颈,特别是在高频多核处理器面前显得力不从心。
  • CPU内置:近年来,随着制程工艺进步和技术革新,越来越多厂商倾向于将内存控制器直接嵌入CPU内部。这样做不仅缩短了信号传输距离,降低了功耗,更重要的是为实现更复杂的内存访问模式创造了条件。

2.2 内存地址映射策略

为了让多个通道协同工作,还需要解决一个问题:如何确定每个请求应该分配给哪条通道处理?这就涉及到内存地址映射策略的选择了。目前比较流行的方案有两种:

  • 交错式(Interleaved):按照一定规律交替分配物理页面到不同通道上。比如在一个双通道系统中,奇数页交给第一通道处理,偶数页则交给第二通道。这样做的好处是可以充分利用各通道资源,避免出现冷热不均的情况。
  • 固定式(Fixed):事先设定好哪些范围内的地址对应特定通道。这种方法虽然实现起来比较简单,但在负载均衡方面表现较差,可能导致某些通道过载而另一些闲置。

2.3 数据预取技术

除了合理规划地址外,现代内存子系统还引入了一项关键技术——数据预取(Prefetch)。顾名思义,就是在CPU发出正式指令之前,提前预测即将使用的数据并加载到缓存中。这样一来,当真正需要这些信息时就可以立即获取,大大提高了工作效率。值得注意的是,随着DDR版本迭代更新,预取宽度也在不断增加,从最初的2位发展到现在常见的8位甚至更高。

三、内存通道模式

3.1 单通道模式

单通道模式,也被称为非对称模式,是以单通道带宽进行操作的一种内存配置方式。
单通道模式并不意味着电脑只支持单通道,即便支持多通道也可能会以单通道的模式运行。单通道模式主要有以下几种情况:
(1)只有一个通道
这没什么好说的,只有一个通道,想执行多通道模式也不允许呀,就算装再多的内存条(DIMM),也只能通过这一条通道传数据。
(2)多个通道
以双通道为例,假设有4个内存槽,第1、2个插槽位于A通道,第3、4个插道位于B通道。分为几种情况:
①只安装一个内存条:这种情况就好比车道有很多,但只有一条车道能跑车(传数据)。
比如有4个内存插模槽,可以只插一根16GB的内存条。
在这里插入图片描述

②容量不相等:虽然安装了多个内存条,但它们的容量不相等时,这种情况系统通常会采用单通道模式。
比如像下图插了3根内存条,A通道的内存容量为 32 + 16 = 48 32+16=48 32+16=48GB,B通道为16GB。
在这里插入图片描述

这种情况下开机时一般会友好提示一下,比如:

警告:各通道安装相同容量的内存能够最大限度发挥内存的性能。不这么做会遭到内存鄙视哦!

3.1 双通道模式

主板有两个内存通道时,在两通道的内存容量相等时会启用双通道模式。也就是说,要使用双通道模式,需要A、B通道的内存容量相等,比如可采用以下几种配置方式:
2根内存条
在这里插入图片描述
3根内存条
在这里插入图片描述

4根内存条
在这里插入图片描述

注:系统中最慢的内存条模块决定了内存通道速度。

3.3 Flex模式

Intel后来改进了技术,推出了弹性双通道内存技术(Intel Flex Memory Technology),它允许不同容量、不同规格甚至不成对的内存组成双通道,从而使用户搭配内存更加灵活。因此,在弹性双通道内存技术加持下,如今双通道可以支持两种工作模式,即对称双通道与非对称双通道。
对称双通道是指前面说的两个通道的内存容量要相等,非对称双通道是指两个通道的内存容量可以不相等。
比如在非对称双通道模式下,使用16GB + 24GB的内存条组合,那么24GB这条通道会被划分成16GB(双通道)和8GB(单通道),也就意味着8GB这部分容量无法享受到双通道的带宽提升效果。
在这里插入图片描述
附:内存相关文章
内存泄漏简介:不断消耗资源的吞噬者
不堪回首的“内存”
内存原理:计算机存储的核心奥秘
内存的升级换代之路

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金创想

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值