首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

电脑 16G 内存,占用 50%后提示内存不足

  •  
  •   godlovesxcjtest · 98 天前 · 6628 次点击
    这是一个创建于 98 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,电脑是笔记本,自带 8G 内存,我自己又加了一根 8G 内存条,威刚京东旗舰店买的,安装后 Windows 可以自动识别到,系统也显示 16G 内存,CPU-Z 查看也能正确识别,显示双通道。老实说,加上内存后,我并没有感觉自己电脑性能有多大提升,这样一直用了半年。直到今天,准备运行一个比较大的 java 项目,一直跑不起来,说是内存不足,无法创建 java 虚拟机,但是任务管理器显示内存占用才 48%,,我:黑人问号???然后我尝试 Chrome 多开标签页,内存占用 50%的时候,各种崩溃就来了,chrome 显示内存不足,后台其他程序也崩溃了。 求问大家,这是咋回事啊??我用 Windows 自带的内存诊断工具跑了一下,内存检测结果正常。CPU-Z 也可以争取识别。我的 Windows 版本:Windows 10 1903 插槽一 eokeQe.png 插槽二 eok3Jf.png 求问大家,这是啥问题,目前内存不足已经严重影响到我敲代码了。。。

    第 1 条附言  ·  98 天前
    今天早上,我准备复现昨天的问题,于是打开了 Chrome 的 40 个标签页,另外还打开了 Jetbrains 全家桶 6 个,发现竟然正常了,内存超过了 50%,好奇快。我之前内存崩溃也不是一次两次了,每次都是 50%就崩溃,这次想复现问题,突然正常了。
    任务管理器截图已贴
    [![eodHmQ.md.png]( https://s2.ax1x.com/2019/08/08/eodHmQ.md.png)]( https://imgchr.com/i/eodHmQ)
    第 2 条附言  ·  98 天前

    忘记选MarKdown了,重新发一下图 eodHmQ.md.png

    82 回复  |  直到 2019-11-13 10:16:20 +08:00
        1
    godlovesxcjtest   98 天前
    看网上有很多说是这是虚拟内存不足的问题,然而我 C 盘可用几十 G,电脑系统安装后就没有动过虚拟内存的设置
        2
    lishunan246   98 天前 via Android
    这两个条的频率对不上啊,主板给了多少频率
        3
    tuwulin365   98 天前
    也许是做了什么优化,把虚拟内存禁用了
        4
    xlogcc   98 天前 via Android
    是不是 时序表 里面的参数完全不一致的原因!
        5
    xmoiduts   98 天前 via Android
    看看任务管理器的“已提交”

    我啥也没有动,( pr 视频软件)爆内存不足时,8g 物理内存已经通过杠杆(划掉)撬动了 32GB 的硬盘空间作为交换区。
        6
    danmu17   98 天前   ♥ 3
    哈哈,又是智商贴,看下能炸出多少不懂装懂的来。。。
        7
    LZSZ   98 天前
    虚拟内存看看是否正常,一般是虚拟内存的问题。
        8
    godlovesxcjtest   98 天前
    @lishunan246 当初客服说电脑会自动以最慢的为标准,我并没有做什么设置。所以,频率不一样应该也可以吧
        9
    745839   98 天前   ♥ 1
    @danmu17 那请你回答一个“懂”的答案
        10
    godlovesxcjtest   98 天前
    @LZSZ 看了看,虚拟内存哪里是“自动管理所有驱动器的分页文件大小”。另外有点迷惑,如果内存充足的话,应该就不需要虚拟内存了吧??
        11
    msg7086   98 天前
    @godlovesxcjtest 一般人配电脑都不会配到内存充足的,都是配使用量大约一半左右。
    比如说我这边随便开个大点的游戏就要用到 25-30G 内存左右,只配了 16G,物理内存占用 70-95%的样子。

    你说的内存占用 48%,是真的是内存占用 48%,还是就物理内存占用 48%?
        12
    Mountain   98 天前
    虚拟机的参数呢?-Xms 和-Xmx ?
        13
    also24   98 天前



    类似症状在线等
        14
    autogen   98 天前
    中毒了,重装系统吧

    16G 内存,chrome 开 80 个标签页没问题
        15
    fvckDaybyte2   98 天前
    @also24 风水有问题
        16
    Ama2in9   98 天前 via iPhone   ♥ 18
    @danmu17 阴阳怪气的显得你很牛逼?上面的不说懂不懂至少都是抱着帮楼主解决问题的心态在回答,到你这成不懂装懂了,不会说话就闭嘴
        17
    limuyan44   98 天前   ♥ 5
    @danmu17 我印象中我多次看到你在回复下面阴阳怪气 :"哈哈,又是智商贴,看下能炸出多少不懂装懂的来。。" 但是你自己又不正紧回答问题,你图什么呢?
        18
    ScjMitsui   98 天前   ♥ 1
    @also24 #13 3/4 好难受,求求你再加一根
        19
    laminux29   98 天前   ♥ 7
    1.加上更多的内存后,电脑只能在运行了超过以前内存数量的内容后,此时与以前相比不卡了,你才能感觉到电脑性能的提升。不然,加内存还不如给系统盘加 SSD 提升的快。在资金有限的情况下,我更建议加 SSD,而非内存。

    2.你应该给一个任务管理器的性能页的截图,而不是什么 cpu-z 的截图。

    3.测试内存容量,你可以自己写个 C,每次按回车就 mallloc 100MB 内存,然后关掉虚拟内存,接着运行这个程序,一边按回车,一边盯着任务管理器看,来测试系统真实内存数量。

    到此为止,你的电脑到底有多少内存,就能测出来。

    4.Java 项目报错的原因有很多,万一项目启动时,一次性就要申请 32G 内存呢?那肯定会报错说内存不足。你应该调试一下,看看问题所在。

    5.大家也别嘲讽 danmu17 了,从他在 [实现 4 个 G 的文件的快速异地传输] 这个话题下的回答,已经说明了他的水平。
        20
    YamatoRyou   98 天前   ♥ 1
    64 位系统下使用 32 位软件可能会提示内存不足,
    通常情况下单个 32 位进程最大能使用的物理内存为 2 GB.
    可以尝试通过建立 RAMDISK 快速填满内存进行测试.
        21
    Wobuguan   98 天前 via Android
    主板是四通道吗?是否是隔一个插槽插入。
    两条都试试单独使用,缩小问题。
        22
    agdhole   98 天前 via Android
    两根内存不同频率问题?
        23
    stephen9357   98 天前
    我猜是 32 位程序的问题,换用 64 位试试,无论你有多少物理内存,32 位应用程序只有 4GB 地址空间可用,高 2G 还是给内核的,除掉各种零碎用途,一般应用层只有 1.9G 地址可用。
        24
    msg7086   98 天前
    @laminux29 说得不错,不过还是有些地方要补充一下。
    1. 这个不一定的,未使用内存在一定时间以后会被交换出去。假如交换出去的都是无所谓的内存分页,那说明电脑本身物理内存已经够用,就算加内存加到超过总用量也不会有特别明显的区别。

    3. Windows 下内核没有过量提交,所以能 malloc 多少应该是取决于其他进程浪费了多少虚拟内存。让楼主直接看数字猜容量,我估计也够呛。

    4. 这个是对的,JVM 老喜欢预分配内存了。调一下虚拟机内存占用应该就成了。

    =====

    话说开大型 Java 项目只给 16G 内存是不是太寒酸了……我十年前工作的单位那时候跑 Java 都是开 48G 内存跑的。十年后你要跑大型项目是不是该给个 64G 啊。
        25
    liyuhang   98 天前   ♥ 1
    @danmu17 看了你这一个月的回复,有一二十条是“不懂装懂”、“智商低”,“好奇某某某”怎么会“某某某”,合着就你智商高,啥都懂呗。
        26
    macdkgb   98 天前 via Android
    1、贴任务管理器截图给大伙瞧瞧。
    2、不同厂家品牌,不同频率的内存组合?这操作有点神奇啊。
    3、可能是:系统出 bug 了,或者电脑硬件出 bug 了,或者系统设置了奇怪的功能选项,导致 windows 只用了其中一条内存条。
        27
    smg   98 天前 via Android
    先看一下日志,在事件查看器里面,按时间和错误筛选出来,再去搜索下
        28
    godlovesxcjtest   98 天前
    @lishunan246
    @agdhole
    应该不是频率的问题,当初咨询客服还有网上搜索的时候,都说内存频率不一样会自动以最低的为标准
        29
    godlovesxcjtest   98 天前
    @danmu17 不要这样说,大家能尝试帮我解决问题我就很开心了
        30
    kokutou   98 天前 via Android
    @godlovesxcjtest
    就算你有 100g 内存,那也要虚拟内存。。。
    关了就会各种崩溃。
        31
    godlovesxcjtest   98 天前
    @Mountain 也不是超大型项目,所以我就给了 2G,
    @laminux29 关于性能提升:我加内存之后不应该组成了双通道了吗,这样内存总体速度应该更快了,所以性能应该也有提升。另外,应该不只是 java 申请太多内存导致的,因为我发现内存使用接近 50%的时候,其他软件都打不开了

    @YamatoRyou 都是 64 位的软件
    @Wobuguan 笔记本只能是 2 个插槽的😂
    @msg7086 这么豪的嘛……也可能是我理解的“大型项目”不太一样,我之分配了 2G 内存给 java,感觉很大了
        32
    sola97   98 天前
    相同症状
        33
    skinny   98 天前
    我遇到过一次类似的,是新买的内存的问题,能看到新增内存大小,但是实际无法使用,甚至使用了新内存条部分就会出错或 CPU 飙升,有的系统直接蓝屏,memtest 卡死。

    具体技术原因不太懂。
        34
    goodboy886   98 天前 via Android
    频率。 时序。改动硬件时建议重装系统,避免系统产生各种 bug
        35
    josephw   98 天前 via iPhone
    先 memtest86+或 win10 自带内存检测工具跑一遍看看吧,有时候不在内存 spd 信息内的坏块可能产生上述问题。
        36
    sephinh   98 天前 via Android
    msconfig 里有个最大可使用内存的设置,一般后加内存得去那改改,另外 win7 和 win10 都会有为硬件保留的内存,有时候预留的还占很多,有时候出 bug 还不会自动释放,win7 能强制释放,win10 好像没啥好办法
        37
    imiao   98 天前
    两条内存不兼容吧,频率都不一样。兼容这玩意很玄学的。。。
        38
    a22271001   98 天前 via Android
    贴一下虚拟内存的设置界面?
        39
    easylee   98 天前
    @laminux29 #19 嘲讽的是人品。技术!=人品。
        40
    DawN1ng   98 天前
    先排除硬件问题:

    1、先单条分别测试是否能够开机并且使用正常

    2、单条测试插槽看是不是插槽损坏

    其他修复方法尝试:

    1、msconfig 设置最大内存到 16G

    2、关闭核显

    3、进 bios 查看是否电压问题

    4、恢复 bios 初始设置

    5、考虑兼容问题,建议更换同品牌同频条
        41
    crella   98 天前 via Android
    不对啊,加多一条内存,同时读写内存的带宽增大了,肯定会变快的。另外这贴的回复怎么好像怪怪的。硬件允许的话建议抓个 win8(pe)启动试试,设置大于 8G 的内存盘并填满。
        42
    augustheart   98 天前
    考虑到 windows10,基本上排除病毒,和驱动
    直接查硬件原因吧:
    1.主板插槽有问题。主板上某条插槽有问题的情况很多。
    2.内存条有问题
    时序不是原因,不能保证不同时序内存条的稳定运行那就是硬件故障。
    跑个 MEMTEST 试试。
    亲身案例:某年笔记本进水,烧坏一根内存条,然后出现各种奇怪的蓝屏死机。MEMTEST 超过 50%就失败(不记得是死机还是关机)
        43
    shfanzie   98 天前
    就是两个内存条频率不一样的问题,客服虽说按最低的频率跑,也是会出现这种显示 16G,但实际上只能使用 8G 的情况。这是主板的玄学问题。建议更换成同品牌同频率的内存条
        44
    LZSZ   98 天前
    @godlovesxcjtest 我本身也有 12g 内存,我想着虚拟内存没啥用就关闭了,结果吃鸡竟然报错内存不足,打开虚拟内存后就正常了。
        45
    augustheart   98 天前
    还有两个不太可能的原因:
    1.硬盘坏道了。
    2.休眠太多天了。我的体验是 windows 如果持续休眠一个星期(每天下班休眠,上班打开,不关机),会出现些奇怪的问题。关机重启即好。
        46
    sjp133   98 天前
    电脑性能不是单一改善内存就可以的,固态硬盘也是在考虑范围内,可能还提升的更多,回到内存问题,内存其实只要加到够用就行,加太大内存空间,后面你可能都用不到,听电脑老板说过内存过大有可能反而影响性能,还可能出现 12G 干不过 8G 的情况,还有用的内存条 2 条的牌子,参数最好一致
        47
    augustheart   98 天前
    @sjp133
    内存在支持的范围内大小不影响性能(前提是无硬件故障)
    至于电脑老板的言论,完全不能拿来当证据。他们精通的是如何以次充好,而不是计算机体系。
        48
    passerbytiny   98 天前
    多内存请用同品牌同频率,如果实在无法满足,最起码也要是同品牌的。你这俩内存,品牌商、制造商、颗粒制造商、频率全部不一样,放在一起用,要是不出问题猪都能上树。另外纠正楼主,兼容多种频率的内存才有可能降频去适应双通道,如果内存是单频率的,是不能被降频的,你这两条内存的运行频率明显不同,绝对的单通道。
        49
    shfanzie   98 天前
    @passerbytiny 要看主板,lz 重启之后不就支持 16G 了嘛。
        50
    augustheart   98 天前
    @shfanzie 加内存条这个动作可不是热插拔的啊
        51
    chocotan   98 天前
    我以前用的 win10 本也有同样症状,各种谷歌百度无解
    后来换成 linux 了
        52
    as94boy   98 天前
    @limuyan44 图优越感呗,像我如果不懂,我既不会随意回答,也不会阴阳怪气地开地图炮。不懂是很正常的事情。
        53
    augustheart   98 天前
    @passerbytiny 实际上市面上基本找不到不兼容多种频率的内存,不同频率的内存条影响的是双通道。
    但是,内存插槽有问题或是内存兼容有问题的主板太容易找到了……
        54
    passerbytiny   98 天前
    @shfanzie #48
    @augustheart #52
    双通道只是题外话,就算不是双通道,不同制造商的内存也很难兼容到一起。
        55
    lion   98 天前 via Android
    @as94boy 感觉不懂才是常态,懂得只是部分,在遭遇不懂的时候默默学习讨论,懂得时候积极提供建议,这样自己才能进步吧。对其他人冷嘲热讽,无益于自身
        56
    no1xsyzy   98 天前
    @passerbytiny 现在( DDR4 ?)都支持 Fallback 2133 的,不行就全回 2133,楼主好像就这样的……
        58
    yulgang   98 天前
    我遇到过类似的问题,因为两个不同规格的内存混用导致的异常。不过我的系统不报错。
    当时的搭配都是 DDR3 的内存,一个低压 2GB,一个标压 1GB,系统属性里显示内存 2.8GB(1.8GB 可用)。后来只用原机的低压内存,系统属性显示 内存 2GB(860MB 可用),原机的低压内存被搞坏了。
        59
    augustheart   98 天前
    @passerbytiny 无意争论,我的意思是,锅要甩清楚,虽然看起来是内存条频率导致的不兼容,但是实际上就是主板的硬件故障。实际上市面上内存插槽有问题的主板暴多,而且很多人可能直到电脑报废都不知道自己主板上那四根插槽有一两根是坏的……作为模块化设计,各部件内部黑盒的 PC 架构体系,没有脆弱到频率问题都需要考虑。
        60
    augustheart   98 天前
    @yulgang 你这个看起来是集成显卡共享内存占用后的结果,并没有什么问题
        61
    xiaolanger   98 天前
    先给内存跑个测试?万一内存有问题呢,我当初闲鱼收内存,就是先跑一些测试,确实有的内存会有问题
        62
    dyxLike   97 天前
    家里的游戏电脑偶尔重度使用 chrome 的时候会出这个问题, 但是公司的开发机各种虚拟机 ide,内存占用经常 90 多却没出过问题;
    怀疑就是单个程序的内存限制(两台电脑都是 16g 内存)
        63
    luozic   97 天前 via iPhone
    程序的设置,jvm 的参数设置检查一下
        64
    sephinh   97 天前 via iPhone
    楼上一堆说楼主两条内存频率不同的问题,都不看看那只是个 spd 信息,不同频率内存混插降频使用都是正常的,楼主 cpu z 内存那个标签打开它肯定都是正常的,兼容问题可以考虑但不是这么个考虑法,难怪有人要开嘲讽模式,哎
        65
    msg7086   97 天前
    @kokutou #30 不会的。
    对于操作系统来说,虚拟内存空间 = 物理内存 + 分页文件。分页文件是物理内存的延伸,关闭虚拟内存就相当于分页文件为零,并不影响正常使用。出错的话纯粹就是内存太小了。还有一种可能是特殊程序需要锁定连续的内存分页,这种情况本质上也是因为内存太小所致。
        66
    fengtons   97 天前 via Android
    如果是怀疑内存兼容性的话可以将两条内存互换插槽,或者分别单独使用一条试试
        67
    nikolai   97 天前
    相同症状,我的 windows 盘长期只剩 1-2G 空间,Chome 多开几个页面或者游戏双开必然崩,应该是虚拟内存引起

    切换到 macOS 没有这个问题
        68
    yulgang   97 天前
    @augustheart 我觉得不是集显分配内存的事儿,因为换了原机的低压内存,就都正常了,不再显示 xxGB 可用了。
        69
    ashong   97 天前 via iPhone
    没开 pagefie 吧
        70
    moooyo   97 天前
    双通道感觉不出快是正常的,在内存足够的情况下本来就不会有很高的感知。
    内存是 CPU cache 和 硬盘之间的一层缓存,根据程序的局部性原理,大部分情况下缓存都是命中的,不会去读内存,内存只有在缓存未命中的情况下才会与 cpu cache 交互,双通道只是增加了内存的访问速度,但是因为本来就很少访问(相对于 cpu cache 来说),所以提升不明显。
        71
    moooyo   97 天前
    @moooyo 内存不够的情况下需要频繁的进行换页,这个时候性能损失就很明显了
        72
    moooyo   97 天前
    凭记忆答的,不保证完全正确。
        73
    zturns   97 天前 via Android
    遇到过几次了,都忘了怎么救回来的……重装系统是一个办法,系统有问题
        74
    itqls   97 天前
    感觉是只有一条内存起作用的样子,
    最简单的办法是旧的拆下来,再买一条同样规格的威刚插上去,
    然后就可以判断到底是不是兼容的问题了...

    再不行,就是主板的锅了
        75
    kokutou   97 天前
    @msg7086 #65 不用分析,你试试就知道了。
        76
    augustheart   97 天前
    @yulgang 你看看你自己的原话:
    “一个低压 2GB,一个标压 1GB,系统属性里显示内存 2.8GB(1.8GB 可用)。后来只用原机的低压内存,系统属性显示 内存 2GB(860MB 可用)”
    正好就是不知道哪里给吃了 1.2GB 左右。你自己做做加减法
    话说你这个是 XP 系统吧。
        77
    augustheart   97 天前
    @yulgang 当然,吃掉 1.2GB 共享内存的集显我确实不知道。bios 里面设置最高 512 ?
        78
    sola97   97 天前
    @kokutou #75 我 32G 内存,日常也就用 16G 多点,虚拟内存留了 8M-2G,也会天天崩,交给系统托管又要吃我 32G 固态硬盘空间
        79
    kokutou   97 天前 via Android
    @sola97
    设置最小 1g,最大 50g 就行了。。。
    默认就 1g 文件,不够时自动增大,重启自动还原到 1g。。。
        80
    liaoyaoheng   97 天前
    应该看的是任务管理器的最右边的“可用”部分,这一部分才是没有被使用的,其他都是正在使用的。

    打开大型应用除非你有 32G 或 64G,还是把虚拟内存设置到有足够空间的盘符设置为自动。
        81
    ihipop   97 天前 via Android
    @danmu17 我猜内存不足是那 Java 程序弹的,Java 的 JVM 虚拟机内存是预申请的,要么楼主调下程序的 jvm 参数或者换 64 位的 jre 和程序,管理内存方式会有点区别。
    真内存不足是 win 弹而不是程序弹。
    我说的对吗?
        82
    tonyru   1 天前
    类似的问题,内存是板载双通道 8G 的轻薄本,但我是到 7g 内存 chrome 报错。
    之前独立内存 8G 的笔记本没这个问题。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4223 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 28ms · UTC 03:24 · PVG 11:24 · LAX 19:24 · JFK 22:24
    ♥ Do have faith in what you're doing.