gpt4 book ai didi

c++ - Leveldb 极限测试——限制一个程序使用的内存

转载 作者:行者123 更新时间:2023-11-28 05:35:14 24 4
gpt4 key购买 nike

我目前正在对基于 Leveldb 构建的应用程序进行基准测试。我想以这样一种方式配置它,即键值总是从磁盘而不是从内存中读取。
为此,我需要限制程序消耗的内存。
我正在使用每个 100 字节的键值对和 100000 个,这使得它们的大小等于 10 MB。如果我使用 ulimit 将虚拟内存限制设置为小于 10 MB,我什至无法运行命令 Makefile

1) 如何配置应用程序以便始终从磁盘中获取键值对?

2) ulimit -v 是什么意思?限制虚拟内存是否转化为限制程序在 RAM 上使用的内存?

最佳答案

也许没有必要减少可用内存,但只需按照描述禁用缓存 here :

  leveldb::ReadOptions options;
options.fill_cache = false;
leveldb::Iterator* it = db->NewIterator(options);
for (it->SeekToFirst(); it->Valid(); it->Next()) {
...
}

关于c++ - Leveldb 极限测试——限制一个程序使用的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38469966/

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