gpt4 book ai didi

c - 将巨大的数据库加载到内存中 visual c

转载 作者:行者123 更新时间:2023-12-03 09:36:30 26 4
gpt4 key购买 nike

我们有一个有点不寻常的 c 应用程序,因为它是一个大约 120 GB 的数据库,所有这些都加载到内存中以实现最佳性能。它运行的机器有大约四分之一 TB 的内存,因此内存可用性没有问题。数据库是只读的。

目前我们正在动态地进行所有内存分配,这很慢,但它只进行一次,所以在时间上不是问题。

我们在考虑,如果我们使用全局数据结构而不是动态分配,是否会更快,无论是在启动还是在运行时性能上。但是,Visual Studio 似乎将全局数据结构限制为微不足道的 4gb,即使您将链接器堆提交和保留大小设置得更大也是如此。

有人知道解决这个问题的方法吗?

最佳答案

一种方法是将您的数据库设置为 persistent memory mapped file然后使用数据库的查询部分来访问它而不是动态分配的结构。值得一试,我认为性能不会受到太大影响(但当然会变慢)。

关于c - 将巨大的数据库加载到内存中 visual c,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8784833/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com