如何为我的程序使用尽可能多的RAM?

时间:2013-08-09 11:22:06

标签: c winapi memory-management ram

我正在努力最大化我的程序速度(以便实时获得结果)并避免从硬盘驱动器中不必要地加载数据。

程序应该处理大量的图像,我想在RAM中处理尽可能多的处理数据。但是我发现即使我有8GB内存(Windows 7 64位),malloc也不会分配超过2GB。

如何让我的程序尽可能多地使用RAM?

1 个答案:

答案 0 :(得分:7)

我认为相当于mmap(2)的窗口是VirtualAlloc

这应该允许你使用更多的内存。请记住,操作系统仍可能决定将您的记忆分页。您可以使用VirtualLock将其锁定在RAM中。可锁定内存的数量可能会受到限制。

同样如评论中所述,请确保将程序编译为64位。