Leveldb限制测试-限制程序使用的内存

Leveldb limit testing - limit Memory used by a program

本文关键字:内存 测试 Leveldb 程序      更新时间:2023-10-16

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

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

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

也许没有必要减少可用内存,只需按此处所述禁用缓存:

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