Skip to content

Commit 4ae97f8

Browse files
committed
fix: remove memory allocations
For some reason it slows down the overall execution of the benchmarks a lot. The time rose from 3 to 20 minutes.
1 parent 1bb4513 commit 4ae97f8

File tree

1 file changed

+2
-12
lines changed

1 file changed

+2
-12
lines changed

examples/google_benchmark_cmake/helper.hpp

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,18 +19,8 @@ NOINLINE static uint64_t recursive_fib(int n) {
1919
}
2020

2121
NOINLINE static uint64_t expensive_operation() {
22-
// Large memory allocation
23-
std::vector<uint64_t> data(1024 * 1024, 42); // 8 MiB allocation
24-
25-
// Expensive recursive computation that will dominate flamegraph
26-
uint64_t fib_result = recursive_fib(30);
27-
28-
// More expensive work
29-
uint64_t sum = std::accumulate(data.begin(), data.end(), uint64_t(0));
30-
benchmark::DoNotOptimize(sum);
31-
benchmark::DoNotOptimize(fib_result);
32-
33-
return sum + fib_result;
22+
// Expensive recursive compuation that will dominate flamegraph
23+
return 42 + recursive_fib(30);
3424
}
3525

3626
#endif // HELPER_HPP

0 commit comments

Comments
 (0)