diff --git a/benchmark/uint32.cpp b/benchmark/uint32.cpp index 5b37de52..887ce727 100644 --- a/benchmark/uint32.cpp +++ b/benchmark/uint32.cpp @@ -289,8 +289,11 @@ template using std_unordered_map = template using boost_unordered_map = boost::unordered_map, std::equal_to, allocator_for>; -template using boost_unordered_flat_map = - boost::unordered_flat_map, std::equal_to, allocator_for>; +template using boost_unordered_flat_map_xmx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::xmx_mix>; + +template using boost_unordered_flat_map_mulx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::mulx_mix>; #ifdef HAVE_ABSEIL @@ -315,7 +318,8 @@ int main() test( "std::unordered_map" ); test( "boost::unordered_map" ); - test( "boost::unordered_flat_map" ); + test( "boost::unordered_flat_map, xmx" ); + test( "boost::unordered_flat_map, mulx" ); #ifdef HAVE_ANKERL_UNORDERED_DENSE @@ -334,7 +338,7 @@ int main() for( auto const& x: times ) { - std::cout << std::setw( 30 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; + std::cout << std::setw( 33 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; } } diff --git a/benchmark/uint64.cpp b/benchmark/uint64.cpp index 94be050a..dd4faa57 100644 --- a/benchmark/uint64.cpp +++ b/benchmark/uint64.cpp @@ -289,8 +289,11 @@ template using std_unordered_map = template using boost_unordered_map = boost::unordered_map, std::equal_to, allocator_for>; -template using boost_unordered_flat_map = - boost::unordered_flat_map, std::equal_to, allocator_for>; +template using boost_unordered_flat_map_xmx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::xmx_mix>; + +template using boost_unordered_flat_map_mulx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::mulx_mix>; #ifdef HAVE_ABSEIL @@ -325,7 +328,8 @@ int main() #endif test( "boost::unordered_map" ); - test( "boost::unordered_flat_map" ); + test( "boost::unordered_flat_map, xmx" ); + test( "boost::unordered_flat_map, mulx" ); #ifdef HAVE_ANKERL_UNORDERED_DENSE @@ -344,7 +348,7 @@ int main() for( auto const& x: times ) { - std::cout << std::setw( 30 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; + std::cout << std::setw( 33 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; } } diff --git a/benchmark/word_size.cpp b/benchmark/word_size.cpp index f7412192..433afb1d 100644 --- a/benchmark/word_size.cpp +++ b/benchmark/word_size.cpp @@ -181,8 +181,11 @@ template using std_unordered_map = template using boost_unordered_map = boost::unordered_map, std::equal_to, allocator_for>; -template using boost_unordered_flat_map = - boost::unordered_flat_map, std::equal_to, allocator_for>; +template using boost_unordered_flat_map_xmx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::xmx_mix>; + +template using boost_unordered_flat_map_mulx = + boost::unordered_flat_map, std::equal_to, allocator_for, boost::unordered::detail::foa::mulx_mix>; #ifdef HAVE_ABSEIL @@ -207,7 +210,8 @@ int main() test( "std::unordered_map" ); test( "boost::unordered_map" ); - test( "boost::unordered_flat_map" ); + test( "boost::unordered_flat_map, xmx" ); + test( "boost::unordered_flat_map, mulx" ); #ifdef HAVE_ANKERL_UNORDERED_DENSE @@ -226,7 +230,7 @@ int main() for( auto const& x: times ) { - std::cout << std::setw( 30 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; + std::cout << std::setw( 33 ) << ( x.label_ + ": " ) << std::setw( 5 ) << x.time_ << " ms, " << std::setw( 9 ) << x.bytes_ << " bytes in " << x.count_ << " allocations\n"; } }