Hello Thomas Tauber-Marshall, Tidy Bot, Alexey Serbin, Kudu Jenkins, Andrew
Wong, Adar Dembo, Todd Lipcon, Tim Armstrong,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/14745
to look at the new patch set (#5).
Change subject: Import Impala's blocked based BloomFilter
......................................................................
Import Impala's blocked based BloomFilter
This change imports Impala's blocked based BloomFilter that uses tiny
BloomFilters that fit
in cache lines. Plan is to use this BloomFilter for pushing down predicate from
Impala.
Added this BF as part of kudu-util and renamed to BlockBloomFilter to avoid
name collision
with existing BloomFilter in kudu.
Removed dependencies on generated code like Thrift/Protobuf, Impala specific
utilities like BufferPool, CPUInfo.
Added a simple BufferAllocator interface to allow integration with Impala
that uses its own BufferPool. Added a DefaultBufferAllocator implementation
derived
from earlier version of the BF in Impala.
This BF uses AVX2 operations which may not be available on target CPU when run.
So the AVX2 specific methods have been moved to a separate file and compiled
with -mavx2
flag and a runtime check is made to invoke the method only if the CPU supports
AVX2.
Compiler may not support AVX2, hence the file block_bloom_filter_avx2.cc is
conditionally
compiled.
Made modifications mostly to adhere to the coding style and make the bots pass.
TODO: Benchmarking and compare against existing Kudu BloomFilter.
Change-Id: I89c54a051c5093cf5fb81481a47a0a6677d7d906
---
M src/kudu/util/CMakeLists.txt
A src/kudu/util/block_bloom_filter-test.cc
A src/kudu/util/block_bloom_filter.cc
A src/kudu/util/block_bloom_filter.h
A src/kudu/util/block_bloom_filter_avx2.cc
5 files changed, 772 insertions(+), 0 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/45/14745/5
--
To view, visit http://gerrit.cloudera.org:8080/14745
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I89c54a051c5093cf5fb81481a47a0a6677d7d906
Gerrit-Change-Number: 14745
Gerrit-PatchSet: 5
Gerrit-Owner: Bankim Bhavsar <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Bankim Bhavsar <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Thomas Tauber-Marshall <[email protected]>
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Reviewer: Tim Armstrong <[email protected]>
Gerrit-Reviewer: Todd Lipcon <[email protected]>