0

我想运行这个使用高达 8.3 GB 内存的巨大 C++ 项目。我可以在某些情况下运行这个程序还是不可能?

4

3 回答 3

7

没关系。您只需要使用 64 位架构,并确保有足够的交换空间 + 可用的物理内存

于 2012-06-09T22:33:46.770 回答
5

这真的取决于。如果程序需要始终拥有所有 8.3 GB 内存(工作大小),您可能需要在计算机中安装类似数量的内存。

现在假设您有 4 GB 的 RAM。在这种情况下,由于使用交换(为了扩大虚拟内存大小而交换内存和交换内存的硬盘区域),您很可能能够执行程序。但是,即使它实际上可以工作,它也可能因为垃圾而运行得非常慢(直到不能真正使用的程度

另一方面,如果您的程序处理 8.3 GB 的数据,但它是在较小的中处理的,这将意味着所有数据都不会一直在内存中。然后,您将不需要在计算机中安装如此大量的 RAM。

正如 Oli Charlesworth 所提到的,如果您想在系统中安装超过 4 GB 的 RAM,您将需要一个 64 位系统(硬件和操作系统),或者至少需要一个具有PAE功能的系统。

于 2012-06-09T22:40:23.547 回答
2

对的,这是可能的。您需要在 64 位环境中,当然还有可用的 RAM。您可能仍然无法一次分配超过 4gb 的连续地址空间。不过,您可能必须将其分配为较小的块。

于 2012-06-09T22:44:51.577 回答