Siying Dong
edcbb36944
Three code-level optimization to Iterator::Next()
...
Summary:
Three small optimizations:
(1) iter_->IsKeyPinned() shouldn't be called if read_options.pin_data is not true. This may trigger function call all the way down the iterator tree.
(2) reuse the iterator key object in DBIter::FindNextUserEntryInternal(). The constructor of the class has some overheads.
(3) Move the switching direction logic in MergingIterator::Next() to a separate function.
These three in total improves readseq performance by about 3% in my benchmark setting.
Closes https://github.com/facebook/rocksdb/pull/2880
Differential Revision: D5829252
Pulled By: siying
fbshipit-source-id: 991aea10c6d6c3b43769cb4db168db62954ad1e3
2017-09-14 17:57:31 -07:00
..
2017-08-11 12:16:45 -07:00
2017-07-21 18:26:26 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-15 16:11:23 -07:00
2017-08-23 19:40:47 -07:00
2017-07-15 16:11:23 -07:00
2017-07-28 16:27:16 -07:00
2017-07-28 16:27:16 -07:00
2017-08-23 15:12:05 -07:00
2017-08-23 07:56:08 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-15 16:11:23 -07:00
2017-07-17 10:41:56 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-08-23 10:56:06 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-28 16:27:16 -07:00
2017-07-21 18:26:26 -07:00
2017-07-27 14:30:42 -07:00
2017-07-27 14:30:42 -07:00
2017-08-23 07:56:08 -07:00
2017-07-15 16:11:23 -07:00
2017-08-23 19:40:47 -07:00
2017-08-11 12:16:45 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-21 18:26:26 -07:00
2017-09-11 09:14:48 -07:00
2017-09-11 09:14:48 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-21 18:26:26 -07:00
2017-09-11 12:04:21 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-09-11 12:04:21 -07:00
2017-09-14 17:57:31 -07:00
2017-09-11 12:04:21 -07:00
2017-08-11 12:16:45 -07:00
2017-08-11 12:16:45 -07:00
2017-07-27 14:30:42 -07:00
2017-07-27 14:30:42 -07:00
2017-08-23 07:56:08 -07:00
2017-08-23 07:56:08 -07:00
2017-08-23 07:56:08 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-28 16:27:16 -07:00
2017-07-28 16:27:16 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-15 16:11:23 -07:00
2017-08-11 12:16:45 -07:00
2017-07-27 14:30:42 -07:00
2017-07-15 16:11:23 -07:00
2017-07-21 18:26:26 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00
2017-08-09 15:58:13 -07:00
2017-08-18 10:56:20 -07:00
2017-07-15 16:11:23 -07:00
2017-07-15 16:11:23 -07:00