京都内阁scan_parallel不是真的平行?

时间:2011-12-15 22:30:07

标签: c++ database multithreading information-retrieval kyotocabinet

我花了一天时间为kyotodb创建了一个抽象层来从我的代码中删除全局锁定,当我发现scan_parallel不是真正的并行时,我正忙着将我的算法移植到这个新的抽象层。它只能最大化一个核心 - 对于jollies,我在我的代码中插入了一个十亿个int倒计时的自旋循环(我的端口是空的存根)来尝试模拟一些处理时间。最多只有一个核心。我需要转移到berkley db或leveldb吗?我认为kyotodb是出于互联网规模问题:/。我必须做错事或遗漏一些陷阱。

topiostat从未超过100%/ 25%(iostat一个cpu maxed = 1 /核心数量* 100):/在四核i5上。

source db是10gigs协议缓冲区编码数据集(treedb),带有以下标志(从文档中选取这些标记)。

index_db.tune_options(TreeDB::TLINEAR | TreeDB::TCOMPRESS);
index_db.tune_buckets(1LL * 1000);
index_db.tune_defrag(8);
index_db.tune_page(32768);

修改

请勿移除IR标签。在你绕开安全球之前请先想想。

这是一个与IR相关的问题,它关于在线创建GINORMOUS(40 gig +)反向文件,反向索引是IR数据访问方法的基础,反向索引创建具有唯一的事务配置文件。通过删除IR标签,您可以剥夺使用数据库库创建大型数据库文件的IR研究人员的智慧。

0 个答案:

没有答案