0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

增加更多内存会让你的计算机速度变快吗?

小林coding 来源:小林coding 作者:小林coding 2022-11-09 14:11 次阅读

今天聊一个简单的问题,增加更多内存会让你的计算机速度变快吗?

要想解答这个问题,我们需要知道cpu、内存与程序这几者的关联,实际上非常简单:

47361a5e-5ff2-11ed-8abf-dac502259ad0.png

首先,可执行程序存储在磁盘中(当然也可以是其它介质),可执行程序中实际上主要包含两部分内容:机器指令以及指令依赖的数据;

程序运行时首先被加载(load)到内存中,被加载到内存中的程序摇身一变就成为了我们说的进程,当然,内存中还运行着另一种特殊的程序:操作系统

只有当CPU真正执行机器指令时相应的进程才开始运行,此时CPU不断的从内存中取出指令并执行指令,当然除了机器指令外还需要读取内存中的数据。

可以看到,当程序运行时与CPU交互的是内存而不是磁盘,内存中存储指令和数据、而CPU使用指令和数据,因此从这个角度看这是一个类似生产者与消费者问题,内存就好比大厨、CPU好比食客,如果大厨上菜太慢那么食客就要挨饿。

除此之外,操作系统对内存的使用也不可忽略。

操作系统是如何利用内存的?

为充分利用内存与磁盘资源,现代操作系统中有很多非常聪明的设计。

由于CPU一次只能运行一个程序,即使在多核系统中一般来说同时存在的进程数远远多于核数,也就是说在某一个时刻并不是所有的程序都在运行,即使对正在运行的进程来说由于局部性原理的存在,进程地址空间中总会有一部分指令或者数据是暂时用不到的。

基于这些,操作系统先驱们看到了可以充分利用内存的机会,我们可以**将暂时用不到的指令或者数据放到磁盘上去(swap out),当使用这些数据或者指令时再从磁盘加载到内存中(swap in)**。

这样内存中不就有更多空间运行更多进程了吗?

这种思想在操作系统中被称之为demand paging,属于虚拟内存的一部分。

479f3714-5ff2-11ed-8abf-dac502259ad0.png

其次,操作系统会将剩余的空闲内存当做磁盘缓存,有时当系统负载较低时,我们的程序并不能充分利用内存,那么这些空闲的内存就真的毫无用处了吗?

显然不是的,我们知道磁盘是一种低速的存储设备,既然这样为什么不把空闲的物理内存当做磁盘的缓存呢?

大家可能都有这样的体验,开始打开一个全新的文件时通常会比较慢,但当你再次使用该文件时将明显感觉到速度会快很多,背后的原理就在于此,如果此时你的内存不足,那么操作系统就没有那么多的空闲内存来当做磁盘缓存,此时你将真正体验到磁盘蜗牛般的速度。

47b8db60-5ff2-11ed-8abf-dac502259ad0.png

现在,我们就可以回答开始提出的问题了,增加内存会加快计算机运行速度吗?

显然这样分为两种情况来讨论:

内存充足

内存不充足

内存充足

如果你的内存本身就很充足,那么在这种情况下增加更多内存将不会让你的计算机跑的更快,因为CPU作为食客吃饭的速度是有限的,大厨做的菜再多也没有,你也没办法让食客吃的再快一些。

这就好比你问给一辆卡车装更多轮子会让开车跑得更快吗?

答案显然不是的,尽管这并不能让卡车跑得更快,但增加更多轮子会让货车有更高的载重。

对内存来说也是这样,尽管增加更多内存并不能让计算机跑得更快,但这显然会让我们可以同时运行更多程序。

增加更多内存意味着你可以同时开启更多浏览器网页、可以同时开启更多虚拟机、同时渲染更多高清视频、同时处理更多复杂的3D模型、同时训练更多机器学习模型等等。

此时你的内存不是瓶颈,CPU将很可能成为瓶颈,因为CPU的运行速度也就是每秒内执行的机器指令数量是有限的。

内存不足

此时大厨上菜速度太慢,食客总是挨饿,因此大厨需要上更多的菜。

我们知道,大部分程序在运行过程中会频繁的申请内存,申请内存是一项看似简单实际上非常复杂的操作、尤其是在系统内存不足的场景下,此时申请内存往往涉及到更多复杂的查找或者异常处理,这时我们的程序运行速度将会明显变慢。

内存不足时,磁盘与内存之间可能会有更多的交换,此时系统的速度将受限于磁盘,并且由于不能缓存磁盘文件, 那么我们开启进程或者打开文件的速度将明显变慢。

在这种情况下增加内存将更好地喂饱CPU,因此将明显加快计算机的运行速度。

总结

从上述分析我们知道,关于增加内存是否可以加快计算机速度取决于你的场景。

如果你的设备内存充足,那么此时增加内存不会明显加快计算机运行速度。

如果你的设备内存不充足,那么此时增加内存会明显加快计算机运行速度,因为可以减少磁盘与内存之间交换次数。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内存
    +关注

    关注

    8

    文章

    2962

    浏览量

    73803
  • 操作系统
    +关注

    关注

    37

    文章

    6672

    浏览量

    123127

原文标题:增加内存会让计算机变快吗?

文章出处:【微信号:小林coding,微信公众号:小林coding】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    计算机接口位于什么之间

    地传输。计算机接口可以分为内部接口和外部接口两大类。 内部接口位于计算机内部各个部件之间,如CPU、内存、主板、硬盘、显卡等。外部接口则位于计算机与外部设备之间,如键盘、鼠标、显示器、
    的头像 发表于 10-14 14:02 173次阅读

    计算机内存容量有什么作用

    计算机内存容量,作为一个核心概念,在计算机科学、信息技术以及日常使用中扮演着至关重要的角色。它不仅直接关系到计算机处理数据的能力,还影响着用户体验、系统性能以及多任务处理的效率。在深
    的头像 发表于 09-10 14:47 464次阅读

    内存条接触不良导致哪些情况

    内存条接触不良是一种常见的计算机故障,它可能导致多种问题,影响计算机的正常运行。本文将详细介绍内存条接触不良可能导致的各种情况,以及如何诊
    的头像 发表于 09-02 14:36 1089次阅读

    DRAM在计算机中的应用

    DRAM(Dynamic Random Access Memory,动态随机存取存储器)在计算机系统中扮演着至关重要的角色。它是一种半导体存储器,用于存储和快速访问数据,是计算机内存的主要组成部分。以下是对DRAM在
    的头像 发表于 07-24 17:04 821次阅读

    内存容量与类型如何影响计算机性能

    内存的容量与类型作为计算机硬件系统中的重要组成部分,对计算机的整体性能有着至关重要的影响。它们不仅决定了系统能够同时处理的数据量大小,还影响着程序的运行速度、系统的响应能力以及多任务处
    的头像 发表于 07-15 18:05 1726次阅读

    工业控制计算机的特点 工业控制计算机的应用领域

    工业控制计算机是一种专门为工业自动化和控制系统设计的计算机。它具有高度的可靠性、稳定性和实时性,能够满足工业生产过程中对控制精度和响应速度的严格要求。 工业控制计算机的特点 高可靠性
    的头像 发表于 06-16 11:30 1344次阅读

    工业计算机与普通计算机的区别

    在信息化和自动化日益发展的今天,计算机已经成为了我们日常生活和工作中不可或缺的工具。然而,在计算机领域中,工业计算机和普通计算机虽然都具备基本的计算
    的头像 发表于 06-06 16:45 1077次阅读

    【量子计算机重构未来 | 阅读体验】第二章关键知识点

    计算机能够减少计算和操作的繁琐程度 作者从如何提高计算机的运算速度上,提出了提高计算速度的两个方向: 加快
    发表于 03-06 23:17

    【量子计算机重构未来 | 阅读体验】+ 初识量子计算机

    欣喜收到《量子计算机——重构未来》一书,感谢电子发烧友论坛提供了一个我了解量子计算机的机会! 自己对电子计算机有点了解,但对量子计算机
    发表于 03-05 17:37

    计算机系统由什么两部分组成 计算机系统的层次结构

    计算机系统是由硬件和软件两部分组成的。 硬件部分包括计算机的实体组件,如中央处理器(CPU)、内存、存储设备、输入输出设备、显示器等。CPU是计算机系统的核心部件,负责执行指令、运算和
    的头像 发表于 02-01 14:13 3371次阅读

    计算机系统如何应对大模型时代的挑战与机遇

    “操作系统管理着计算机的资源和进程,以及所有的硬件和软件。计算机的操作系统用户在不需要了解计算机语言的情况下与计算机进行交互。”这是我们对
    发表于 01-23 11:06 494次阅读
    <b class='flag-5'>计算机</b>系统如何应对大模型时代的挑战与机遇

    工业计算机与商用计算机的区别

    工业计算机与商用计算机的区别  工业计算机和商用计算机是两种应用于不同领域的计算机系统。虽然它们在技术方面存在一些共性,但在功能、设计、可靠
    的头像 发表于 12-27 10:50 578次阅读

    新型全光开关可提高计算机处理器速度

    由于电子开关的局限性,传统的计算机处理器几乎已经达到了它们的“时钟速度”(衡量它们可以打开和关闭的速度的指标)。希望改进计算机处理器的科学家已经对全光开关的潜力产生了兴趣,全光开关使用
    的头像 发表于 12-25 14:55 618次阅读
    新型全光开关可提高<b class='flag-5'>计算机</b>处理器<b class='flag-5'>速度</b>

    什么是后量子密码学?量子计算机vs经典计算机

    后量子密码学(Post-Quantum Cryptography,PQC)是在经典计算机上定义和执行算法,研究量子计算机和经典计算机都无法破解的新密码系统。后量子密码学的提出是为了抵抗量子计算
    的头像 发表于 12-19 11:42 1548次阅读

    单板计算机是什么?它与其他计算机有何不同?

    单板计算机是什么?它与其他计算机有何不同? 单板计算机(Single Board Computer,SBC)是一种集成了所有计算机部件的完整计算机
    的头像 发表于 12-15 09:58 1339次阅读