mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-12-10 04:33:59 +01:00
refactor: Preallocate PrevectorFillVector(In)Direct without vector resize
The prevector benchmarks were likely not trying to measure vector resize performance.
This commit is contained in:
@@ -87,6 +87,7 @@ static void PrevectorFillVectorDirect(benchmark::Bench& bench)
|
|||||||
{
|
{
|
||||||
bench.run([&] {
|
bench.run([&] {
|
||||||
std::vector<prevector<28, T>> vec;
|
std::vector<prevector<28, T>> vec;
|
||||||
|
vec.reserve(260);
|
||||||
for (size_t i = 0; i < 260; ++i) {
|
for (size_t i = 0; i < 260; ++i) {
|
||||||
vec.emplace_back();
|
vec.emplace_back();
|
||||||
}
|
}
|
||||||
@@ -99,6 +100,7 @@ static void PrevectorFillVectorIndirect(benchmark::Bench& bench)
|
|||||||
{
|
{
|
||||||
bench.run([&] {
|
bench.run([&] {
|
||||||
std::vector<prevector<28, T>> vec;
|
std::vector<prevector<28, T>> vec;
|
||||||
|
vec.reserve(260);
|
||||||
for (size_t i = 0; i < 260; ++i) {
|
for (size_t i = 0; i < 260; ++i) {
|
||||||
// force allocation
|
// force allocation
|
||||||
vec.emplace_back(29, T{});
|
vec.emplace_back(29, T{});
|
||||||
|
|||||||
Reference in New Issue
Block a user