• 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
..
FlatBuffers.Benchmarks Loading commit data...
FlatBuffers.Test Loading commit data...
MyGame Loading commit data...
docker Loading commit data...
fuzzer Loading commit data...
include_test Loading commit data...
namespace_test Loading commit data...
prototest Loading commit data...
rust_usage_test Loading commit data...
union_vector Loading commit data...
DartTest.sh Loading commit data...
GoTest.sh Loading commit data...
JavaScriptTest.js Loading commit data...
JavaScriptTest.sh Loading commit data...
JavaScriptUnionVectorTest.js Loading commit data...
JavaTest.bat Loading commit data...
JavaTest.java Loading commit data...
JavaTest.sh Loading commit data...
LuaTest.bat Loading commit data...
PythonTest.sh Loading commit data...
RustTest.bat Loading commit data...
RustTest.sh Loading commit data...
TestAll.sh Loading commit data...
TypeScriptTest.sh Loading commit data...
generate_code.bat Loading commit data...
generate_code.sh Loading commit data...
go_test.go Loading commit data...
javatest.bin Loading commit data...
lobstertest.lobster Loading commit data...
luatest.lua Loading commit data...
monster_extra.fbs Loading commit data...
monster_extra_generated.h Loading commit data...
monster_test.bfbs Loading commit data...
monster_test.fbs Loading commit data...
monster_test.grpc.fb.cc Loading commit data...
monster_test.grpc.fb.h Loading commit data...
monster_test.schema.json Loading commit data...
monster_test_generated.h Loading commit data...
monster_test_generated.js Loading commit data...
monster_test_generated.lobster Loading commit data...
monster_test_generated.rs Loading commit data...
monster_test_generated.ts Loading commit data...
monster_test_my_game.example2_generated.dart Loading commit data...
monster_test_my_game.example_generated.dart Loading commit data...
monster_test_my_game_generated.dart Loading commit data...
monsterdata_extra.json Loading commit data...
monsterdata_python_wire.mon Loading commit data...
monsterdata_test.golden Loading commit data...
monsterdata_test.json Loading commit data...
monsterdata_test.mon Loading commit data...
phpTest.php Loading commit data...
phpUnionVectorTest.php Loading commit data...
phpUnionVectorTest.sh Loading commit data...
py_test.py Loading commit data...
test.cpp Loading commit data...
test_assert.cpp Loading commit data...
test_assert.h Loading commit data...
test_builder.cpp Loading commit data...
test_builder.h Loading commit data...
unicode_test.json Loading commit data...