• Malthe Borch's avatar
    Use a hash table to index existing vtables (#5314) · e47ca7ab
    Malthe Borch authored
    * Use a hash table to index existing vtables
    
    This allows for quick deduplication even in situations where there
    might be thousands of vtables due to 'combinatoric explosion'.
    
    This fixes issue #5301.
    
    * Refactor 0-offset trimming
    
    * Improve deduplication benchmark
    
    The routine now generates a set of realistic logical layouts and
    uses a timer function that randomly picks a layout for each iteration.
    
    The benchmark runs in batches of # of logical layouts = 1, 10, 100, 1000.
    
    (Note that due to alignment, the actual number of vtables is usually slightly
    higher.)
    e47ca7ab
Name
Last commit
Last update
.appveyor Loading commit data...
.bazelci Loading commit data...
.github Loading commit data...
.travis Loading commit data...
CMake Loading commit data...
android Loading commit data...
conan Loading commit data...
dart Loading commit data...
docs Loading commit data...
go Loading commit data...
grpc Loading commit data...
include/flatbuffers Loading commit data...
java/com/google/flatbuffers Loading commit data...
js Loading commit data...
lobster Loading commit data...
lua Loading commit data...
net/FlatBuffers Loading commit data...
php Loading commit data...
python Loading commit data...
reflection Loading commit data...
rust/flatbuffers Loading commit data...
samples Loading commit data...
snap Loading commit data...
src Loading commit data...
tests Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.travis.yml Loading commit data...
BUILD Loading commit data...
CMakeLists.txt Loading commit data...
CONTRIBUTING.md Loading commit data...
LICENSE.txt Loading commit data...
WORKSPACE Loading commit data...
appveyor.yml Loading commit data...
build_defs.bzl Loading commit data...
composer.json Loading commit data...
conanfile.py Loading commit data...
package.json Loading commit data...
pom.xml Loading commit data...
readme.md Loading commit data...