Commit b5aeabe
committed
fix: exclude paused sections via callgrind collection toggling
Replace the per-pause CALLGRIND_STOP/START_INSTRUMENTATION calls with
CALLGRIND_TOGGLE_COLLECT. Toggling instrumentation flushes callgrind's
simulated cache, so every benchmark measured an artificial cold-cache
warmup phase and the cache-warming repetition in RunAnalysis was wasted,
regressing 76 benchmarks. Toggling collection excludes paused sections
without touching simulator state.
Gate the toggles to explicit user PauseTiming()/ResumeTiming() calls:
TOGGLE_COLLECT is parity-based and collection starts enabled, so the
implicit StartKeepRunning()/FinishKeepRunning() bracket must not toggle
or it would invert the collection state for the whole run.
Bump instrument-hooks for the new callgrind_toggle_collect helper.
Fixes COD-20331 parent 1eae3cc commit b5aeabe
4 files changed
Lines changed: 35 additions & 4 deletions
File tree
- core
- google_benchmark
- include/benchmark
- src
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
949 | 949 | | |
950 | 950 | | |
951 | 951 | | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
952 | 961 | | |
953 | 962 | | |
954 | 963 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
202 | 205 | | |
203 | 206 | | |
204 | 207 | | |
| |||
273 | 276 | | |
274 | 277 | | |
275 | 278 | | |
276 | | - | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
277 | 286 | | |
278 | 287 | | |
279 | 288 | | |
| |||
314 | 323 | | |
315 | 324 | | |
316 | 325 | | |
317 | | - | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
318 | 330 | | |
319 | 331 | | |
320 | 332 | | |
| |||
367 | 379 | | |
368 | 380 | | |
369 | 381 | | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
370 | 387 | | |
371 | 388 | | |
372 | 389 | | |
373 | 390 | | |
374 | 391 | | |
375 | 392 | | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
376 | 398 | | |
377 | 399 | | |
378 | 400 | | |
| |||
0 commit comments