diff options
Diffstat (limited to 'src/mongo/db/namespace_string_bm.cpp')
| -rw-r--r-- | src/mongo/db/namespace_string_bm.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/mongo/db/namespace_string_bm.cpp b/src/mongo/db/namespace_string_bm.cpp index 0a1f1448841..4a6799e92bb 100644 --- a/src/mongo/db/namespace_string_bm.cpp +++ b/src/mongo/db/namespace_string_bm.cpp @@ -97,6 +97,24 @@ void BM_CreateLongNsFromConstexpr(benchmark::State& state) { } } +void BM_NamespaceStringShortDbName(benchmark::State& state) { + const auto dbName = "short"_sd; + NamespaceString ns = makeNS(dbName, kMapCollName); + + for (auto _ : state) { + benchmark::DoNotOptimize(ns.dbName()); + } +} + +void BM_NamespaceStringLongDbName(benchmark::State& state) { + const std::string dbName(60, 'x'); + NamespaceString ns = makeNS(dbName, kMapCollName); + + for (auto _ : state) { + benchmark::DoNotOptimize(ns.dbName()); + } +} + void searchInMap(benchmark::State& state, const NamespaceString& ns) { immutable::map<DatabaseName, std::shared_ptr<int>> dbMap; @@ -149,6 +167,10 @@ BENCHMARK(BM_CreateShortNsFromConstexpr); BENCHMARK(BM_CreateLongNsFromConstexpr); +BENCHMARK(BM_NamespaceStringShortDbName); + +BENCHMARK(BM_NamespaceStringLongDbName); + BENCHMARK(BM_NamespaceStringShortDbNameMapLookupExist); BENCHMARK(BM_NamespaceStringLongDbNameMapLookupExist); |
