请教:怎样能让集成显卡的机器显存不占用操作系统的内存
3837
25
[1 楼] 老高
[泡菜]
2-19 18:02
情况是这样:单位有若干32位win7的机器,只有4G内存,但是集成显卡又占用了本就不多的内存的一部分。
现在问题是:如果我在加一条4G内存,怎样才能让显卡使用这部分内存做显存? 不讨论为啥不升级成64位系统,有很多原因。。。 老高 编辑于 2025-02-19 18:03 |
[26 楼] huhuzz
[泡菜]
2-21 16:41
camsone 发表于 2025-02-20 17:44 如果出厂就配置了8G内存,那肯定配套的是64位的win7,没有4G内存限制, 发布自 iOS客户端 |
[25 楼] Tianmou
[资深泡菜]
2-21 11:04
老高 发表于 2025-02-20 17:32 如果有可能自己买一个用也行,我单位电脑就是自己买的, 最新的配置。别让同事桶,老给我下东西。 |
[24 楼] 闲聊状态
[泡菜]
2-21 10:58
32位X86 可以靠PAE来使用多于4G的内存,但是单进程最大内存2G,除非有特别的内存使用手段否则就是这样了
32位 4G 个人认为 个人使用足够了,没必要再升级,实际上4G内存它也不是全能用到。。如果就要纠结那一点点显存占用,就如下面说的买个显卡吧 GT610啥的就行了 至少1G显存了 |
[23 楼] 老高
[泡菜]
2-21 10:37
washu 发表于 2025-02-20 23:55 ![]() |
[22 楼] washu
[泡菜]
2-20 23:55
老高 发表于 2025-02-20 17:38 首先你的主板要提供支持,就是我在 14 楼说的内存地址重映射。如果能,Win7 会正确显示你安装的内存大小,比如你安装了 8GB,它会显示,你安装了 8GB,但不能用。 然后,打开 Win7 的 PAE 支持,我前面说过了。 最后,具体的程序也要支持 PAE 寻址,我前面也举例了,如果具体的程序(绝大部分都不支持)不支持,也一样不可以。 所以其实就是,非要在 32 位 OS 下使用大内存本身就是一个吃力不讨好的破事。 |
[21 楼] duoduobear
[Canon论坛版主]
2-20 22:50
huhuzz 发表于 2025-02-20 15:55 我的意思是如果不玩大型3D游戏,大语言模型等需要大显存的应用,显存需求是毛毛雨,4GB内存分配几百MB做显存,啥影响都没有。 |
[20 楼] CATWK
[泡菜]
2-20 22:08
老高 发表于 2025-02-20 17:38 32位系统按理说可以寻址到4GB内存的地址空间,但实际因为有系统和硬件保留、显存等的开销,实际只能使用3.25-3.5GB,如果是独立显卡不知道能不能把显存占用的那部分释放出来,但即使可以,也不会超过3.5GB |
[19 楼] camsone
[泡菜]
2-20 17:44
huhuzz 发表于 2025-02-20 15:55 是的,可以。我12 年前的戴尔笔记本在用,一直没变。集成显卡,内存8GB。硬盘,一个500G机械硬盘,还一个好像32G的miniSATA做缓存。系统开始是win 7, 现在升级成了win 11. |
[18 楼] 老高
[泡菜]
2-20 17:38
CATWK 发表于 2025-02-20 17:01 |
[17 楼] 老高
[泡菜]
2-20 17:32
Tianmou 发表于 2025-02-20 16:23 我只是和各位DX探讨一下是否有这个可能性,如果没有,也就不折腾了 |
[15 楼] CATWK
[泡菜]
2-20 17:01
32bitWin7只能用到3.5G内存,我觉得你应该先搞清楚到底这个集成显卡是不是可以使用这3.5G之外的那500MB,不行再想别的办法
|
[14 楼] washu
[泡菜]
2-20 17:00
yifanker 发表于 2025-02-20 16:24 你说那个只能识别 3.5GB,是另一个问题,叫内存地址重映射 |
[13 楼] yifanker
[资深泡菜]
2-20 16:24
好像在不玩游戏时,就占用几十MB显存,这个浪费不了多少,分配给显卡也没大的意义
以前因为用特殊软件,必须用32位Win7(好像只能识别3.5GB),就把额外的4GB内存用RAMDISK软件虚拟成一个盘,把页面文件放进去 |
[12 楼] Tianmou
[资深泡菜]
2-20 16:23
其实把, 你像这种老机器, 没啥折腾的必要, 真的, 你研究半天。没有任何改变。 除非你在单位实在没事干
|
[11 楼] huhuzz
[泡菜]
2-20 15:55
duoduobear 发表于 2025-02-20 12:35 楼主不是需要大显存,而是不想让集成显卡使用4G以内的内存。 可能楼主认为32位操作系统访问不了4G以外的内存,但是集成显卡可以。 发布自 iOS客户端 |
[10 楼] 老高
[泡菜]
2-20 12:50
多谢各位的指教,我去找台机器试试
|
[9 楼] duoduobear
[Canon论坛版主]
2-20 12:35
Tianmou 发表于 2025-02-20 11:10 你的方案听上去很合理,既然保持在32bit windows,那增加4GB以上内存,确实不如增加独立显卡,这样完全不占用4GB系统内存。 但是,我好奇的是有什么需求需要大显存?不玩游戏的话,日常办公使用对显存的需求要求很低。 32位Windows 7的显存最低要求是128MB。 |
[8 楼] washu
[泡菜]
2-20 12:00
老高 发表于 2025-02-20 11:30 Winnt4 和以后的 Windows 都支持,比如 WinXP(Winnt 5.1)。默认的,Win7 32bit 版对 PAE 支持禁用,续用 bcdedit /set pae forceenable 开启。但,问题在于这和你没关系 ![]() |
[7 楼] 老高
[泡菜]
2-20 11:30
流浪大猫 发表于 2025-02-19 19:06 |
[6 楼] Tianmou
[资深泡菜]
2-20 11:10
一条内存 50元 一个亮机卡100元。 不如加个亮机卡, 还能多点接口
|
[5 楼] duoduobear
[Canon论坛版主]
2-20 10:39
老高 发表于 2025-02-19 18:02 物理地址扩展 (PAE) 是一项处理器功能,使 x86 处理器能够在支持 Windows 的版本※※问超过 4 GB 的物理内存。 在基于 x86 的系统上运行的某些 32 位版本的 Windows Server 可以使用 PAE 访问高达 64 GB 或 128 GB 的物理内存,具体取决于处理器的物理地址大小。 有关详细信息,请参阅 Windows 版本的内存限制。 Intel Itanium 和 x64 处理器体系结构可以本机访问超过 4 GB 的物理内存,因此不提供等效的 PAE。 PAE 仅由在基于 x86 的系统上运行的 32 位版本的 Windows 使用。 使用 PAE 时,操作系统将从两级线性地址转换转换为三级地址转换。 与其将线性地址拆分为三个单独的字段用于索引到内存表,不如将其拆分为四个单独的字段:一个 2 位位域、两个 9 位位域和一个对应于 Intel 体系结构实现的页大小 (4 KB) 的 12 位位域。 在 PAE 模式下,PTE (页表条目的大小) 和页目录条目 (PTE) 从 32 位增加到 64 位。 附加位允许操作系统 PTE 或 PDE 引用超过 4 GB 的物理内存。 在基于 x64 的系统上运行的 32 位 Windows 中,PAE 还支持多种高级系统和处理器功能,包括支持硬件 的数据执行防护 (DEP) 、 非统一内存访问 (NUMA) ,以及 (热添加内存) 向系统添加内存的功能。 PAE 不会更改进程可用的虚拟地址空间量。 在 32 位 Windows 中运行的每个进程仍限制为 4 GB 虚拟地址空间。 PAE 的系统支持 PAE 仅在基于 x86 的系统上运行的以下 32 位版本的 Windows 上受支持: 仅 Windows 7 (32 位)Windows Server 2008 仅 (32 位)Windows Vista 仅 (32 位)Windows Server 2003 仅 (32 位)仅 Windows XP (32 位) 启用 PAE 如果在支持支持硬件的 DEP 的计算机上启用了 DEP,或者如果计算机配置为内存范围超过 4 GB 的热添加内存设备,则 Windows 会自动启用 PAE。 如果计算机不支持启用硬件的 DEP,或者未针对内存范围超过 4 GB 的热添加内存设备进行配置,则必须显式启用 PAE。 若要显式启用 PAE,请使用以下 BCDEdit /set 命令设置 pae 启动条目选项: bcdedit /set [{ID}] pae ForceEnable 如果启用了 DEP,则无法禁用 PAE。 使用以下 BCDEdit /set 命令禁用 DEP 和 PAE: bcdedit /set [{ID}] nx AlwaysOff bcdedit /set [{ID}] pae ForceDisable Windows Server 2003 和 Windows XP:若要启用 PAE,请使用 boot.ini 文件中的 /PAE 开关。 若要禁用 PAE,请使用 /NOPAE 开关。 若要禁 用 DEP,请使用 /EXECUTE 开关。 比较 PAE 和其他大型内存支持 PAE、 4 GB 优化 (4GT) ,以及 地址窗口扩展 (AWE) 具有不同的用途,可以彼此独立使用: PAE 允许操作系统访问和使用超过 4 GB 的物理内存。4GT 将可供进程使用的虚拟地址空间部分从 2 GB 增加到 3 GB。AWE 是一组 API,允许进程分配非分页物理内存,然后将此内存的一部分动态映射到进程的虚拟地址空间。当未使用 4GT 和 AWE 时,单个 32 位进程可以使用的物理内存量受其地址空间大小限制 (2 GB) 。 在这种情况下,已启用 PAE 的系统仍然可以使用超过 4 GB 的 RAM 来同时运行多个进程或在内存中缓存文件数据。 4GT 可与 PAE 一起使用,也可以不带 PAE 使用。 但是,某些版本的 Windows 会限制使用 4GT 时可以支持的最大物理内存量。 在此类系统上,在启用 4GT 的情况下启动会导致操作系统忽略超出限制的任何内存。 AWE 不需要 PAE 或 4GT,但通常与 PAE 一起使用,以便从单个 32 位进程分配超过 4 GB 的物理内存。 https://learn.microsoft.com/zh-cn/windows/win32/memory/physical-address-extension?redirectedfrom=MSDN |
[4 楼] washu
[泡菜]
2-19 20:17
老高 发表于 2025-02-19 18:02 不能,因为 GPU 对显存的访问是驱动决定的(实际上独显也能用系统内存做显存,显卡上的显存爆掉的时候就会这样干),而驱动也运行在操作系统里,所以只能访问操作系统能访问的内存范围。 |
[3 楼] 流浪大猫
[泡菜]
2-19 19:06
集显对内存的占用是动态分配的,如果应用不需要使用大量显存是不会占用的,而如果应用需要而人为限制只会让应用无法正常运行,另外32位系统除非系统支持PAE,否则升级内存并没有意义。
|
[2 楼] Trompette
[泡菜]
2-19 18:28
加物理内存没有用
只能在 BIOS 里限定分给集显的内存,老机器也许能设到 16M |