oip*_*tar 20 memory windows windows-7
我想知道是否有任何方法可以配置 Windows 以消耗更多内存。我有一台带有 16 GB 内存的台式机,在正常工作负载中只使用了 2 个内存。到目前为止,我目睹的最大值是 6 GB。有什么方法可以告诉 Windows 为这样的环境调整其内部工作吗?
mto*_*one 37
它可能已经在使用它。在这个例子中:
您会认为有 7.55GB 未使用的 RAM。错误的。Windows 将其用作缓存,或者通过保留不再需要的以前使用的数据,或者通过提前加载经常访问的数据(主要是诸如库和预取之类的操作系统内容 - 它不会加载您的 word 文件或任何东西)。运气好的话,其中一些将被重新使用,这将提高性能。

Dar*_*oid 12
已经是了。
需要注意的重要一点是系统必须运行的内存与用于缓存等的内存之间的区别。2GB 的内存,有时高达 6GB,是 Windows 必须保留在内存中才能运行您的程序或面临严重的页面文件抖动问题的内存。但是,这并不意味着其他 14GB 没有使用!相反,剩余的内存被大量用于从磁盘和其他常用但速度较慢的数据存储缓存文件。然而,由于这只是缓存,windows 不会认为内存“正在使用”——如果它需要实际应用程序数据的空间,它可以转储它。
“但是为什么我需要一个页面文件呢?”
拥有页面文件允许 Windows 以最佳方式管理缓存。看,我们人类认为我们知道如何以最有效的方式最好地管理大约1280 亿位数据。事实是,当我们停止干预并让它做它的事情时,与计算机试图使用的算法效率相比,我们不知道深蹲。
假设一个程序需要 200MB 的内存,但它只经常访问 100MB 的内存。Windows 将为应用程序分配 100MB 的内存(您看到的 2GB 的一部分),然后为应用程序所需的其余空间分配 100MB 的页面文件。当您有可用的空闲内存时,它只会将页面文件中的 100MB 加载到内存中,这样它就坐在那里,随时准备就绪。当 Windows 执行此操作时,它知道 100MB 内存仍可用于更重要的需求——假设您经常为游戏加载 100MB 级别的文件,每隔几分钟左右,但该应用程序只使用额外的内存每天一次内存(当我们在做的时候,假设剩余的内存已经被缓存填满了)。如果那段记忆闲置在那里,而游戏关卡每次都从磁盘加载?当然不是!Windows 将从缓存中转储应用程序数据并将游戏关卡加载到缓存中,从而使您的游戏运行速度大大加快。
小智 5
使用 8GB 或更多内存时,我建议您尝试禁用 kernel paging。这将强制您的内核进入内存而不是对其中的一部分进行分页,并且您的系统响应速度可能会略有增加。我不建议禁用页面文件,尽管您可能可以将其设置为最小 1GB 和最大 2GB。Windows 7 实际上非常擅长管理内存,尽管通过禁用页面文件您可能不会遇到任何内存不足的问题,但它可能会影响SuperFetch. 尽管 6GB 可能用于运行程序,但 Windows 将使用几乎所有剩余的内存来缓存您可能在给定时间打开的文件。这是 SuperFetch(Prefetch 的哥哥)。禁用页面文件几乎肯定不会提高性能,而且在加载时间方面,您可能会受到打击。
禁用页面文件。一般来说是个坏主意,但会做你想做的事。
为此,请转至:控制面板\系统和安全\系统\
高级系统设置\性能设置\高级选项卡\更改(虚拟内存下)\自动取消勾选,点击无分页文件
这是为什么没有页面文件是一个坏主意的例子。如果这种情况不会发生在你身上(你有足够的内存),那么就不会有问题。
完全删除页面文件可能会导致更多的磁盘抖动。想象一个简单的场景,其中一些应用程序启动并需要 80% 的现有 RAM。这将迫使当前可执行代码脱离 RAM——甚至可能是操作系统代码。现在,每当其他应用程序或操作系统本身(!!)需要访问该数据时,操作系统都必须从磁盘上的后备存储中对它们进行分页,从而导致大量的抖动。因为如果没有页面文件作为瞬态数据的后备存储,唯一可以分页的就是具有固有后备存储的可执行文件和 DLL。
| 归档时间: |
|
| 查看次数: |
107680 次 |
| 最近记录: |