Todd Lipcon has submitted this change and it was merged. Change subject: Misc optimizations to BinaryPlainBlockDecoder ......................................................................
Misc optimizations to BinaryPlainBlockDecoder Looking at a profile while running a YCSB read workload against a binary built with clang, I noticed that BinaryPlainDecoder had done a really poor job of inlining vector::push_back when building the offsets array. This switches away from using a vector there and instead uses a simple buffer/pointer view into the buffer. I also rearranged a bit of other code and added PREDICT_FALSEs to try to get the code into a tighter loop. Change-Id: I5b5061818de36dc268cd5d4fc8553bceeca5dadd Reviewed-on: http://gerrit.cloudera.org:8080/6159 Tested-by: Kudu Jenkins Reviewed-by: David Ribeiro Alves <dral...@apache.org> --- M src/kudu/cfile/binary_plain_block.cc M src/kudu/cfile/binary_plain_block.h 2 files changed, 43 insertions(+), 26 deletions(-) Approvals: David Ribeiro Alves: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/6159 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I5b5061818de36dc268cd5d4fc8553bceeca5dadd Gerrit-PatchSet: 5 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Todd Lipcon <t...@apache.org> Gerrit-Reviewer: Andrew Wong <andrew.w...@cloudera.com> Gerrit-Reviewer: David Ribeiro Alves <dral...@apache.org> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon <t...@apache.org>