fptree的期望性能
penhison opened this issue · comments
penhison commented
请问fptree的期望性能有多高?
我使用ycsb同样的代码测试leveldb和fptree,发现在load阶段fptree比leveldb慢了一倍,在run阶段两者性能差不多
在我们的实现中,每次修改叶子后都会立即调用LeafNode::persist,我们每次都判断叶子是否是pmem地址,若是则用pmem_persist持久化,如不是则用pmme_msync持久化,其实现代码为:
void LeafNode::persist() {
if (pmem_is_pmem(this->pmem_addr, calLeafSize())) {
pmem_persist(this->pmem_addr, calLeafSize());
} else {
pmem_msync(this->pmem_addr, calLeafSize());
}
}
Howard Lau commented
看官方文档,pmem_is_pmem非常费时,最好调用一次后将结果缓存起来
penhison commented
的确是pmem_is_pmem的问题,将结果提前缓存下来后在220w的测试结果中fptree的load阶段比leveldb快了20%,run阶段fptree比leveldb快3倍
ZhangJiaQiao commented
一次修改对应持久化对应修改的位置即可,不用持久化整个叶子
penhison commented
叶子节点没有相对应的成员函数,是否可以自己添加必要的成员函数?
ZhangJiaQiao commented
不影响测试就行
…---原始邮件---
发件人: "penhison"<notifications@github.com>
发送时间: 2019年5月22日(星期三) 晚上9:56
收件人: "ZhangJiaQiao/2019-DBMS-Project"<2019-DBMS-Project@noreply.github.com>;
抄送: "Comment"<comment@noreply.github.com>;"ZhangJiaQiao"<1254860908@qq.com>;
主题: Re: [ZhangJiaQiao/2019-DBMS-Project] fptree的期望性能 (#26)
叶子节点没有相对应的成员函数,是否可以自己添加必要的成员函数?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.