加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

今天做了一个重要优化(将不成功查询的耗时大大降低)

(2011-06-02 19:31:14)
标签:

杂谈

     此前的方案中,不成功的查询往往要比成功的查询慢一些,这是B+树结构的特点,因为在叶节点上必须要全部顺序走完,或者二分完才能确定失败,这次通过一个方法将这块进行了优化,在更早期发现失败,减少比较次数。

    优化前1万次热失败查询耗时0.524s,优化后1万次热失败查询消耗0.076s,大约快5倍多,效果非常明显,如果用在高阶语言模型,非常有利的结果。因为语言模型在query的时候,失败的机会往往比成功的机会大,因为总是探测更大的窗口,而最后才尝试小窗口。大窗口意味着告失败率,特别是在5元模型下。

 

    该优化将会放在0.3版本中和大家见面,届时大家可以自己测测。

      

 

    注:该测试结果,在我1G内存,笔记本上完成,只有对比参考性。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有