tree 6426e8423c882a18f5b65462cfaa5518a773048f
parent 2672fe23805a35a88d3a0a3aed281ede2d902fa9
author reubent <reubent@google.com> 1770930607 -0800
committer Copybara-Service <copybara-worker@google.com> 1770930668 -0800

Add new balsa_frame microbenchmark

This microbenchmark is very simple and tests the performance of parsing a chunked request with extensions with the strictest HttpValidationPolicy options available since they all add a bit of extra overhead. It also defines a nearly no-op visitor which should mimic the overhead required to invoke an integrators visitor implementation.

A nearly identical test is added to balsa_frame_test.cc to test the correctness of the logic.

All `_benchmark.cc` are already excluded by copybara rules.

```
Benchmarking blaze-out/k8-opt/bin/third_party/quiche/balsa/balsa_frame_benchmark
Run on reubent3.cam (128 X 2695 MHz CPUs); 2026-02-11T17:21:00.272874364-05:00
CPU: AMD Rome (64 cores) dL1:32KB dL2:512KB dL3:256MB
***WARNING*** CPU scaling is enabled, the benchmark timings may be noisy, see http://go/benchmark#cpu-scaling
Benchmark                       Time(ns)        CPU(ns)     Iterations
----------------------------------------------------------------------
BM_ProcessInputChunked              1703           1762          36579 5.334kB/s
BM_ProcessInputChunked              1741           1629          31899 6.615kB/s
BM_ProcessInputChunked              1721           1719          39511 5.061kB/s
BM_ProcessInputChunked              1731           1718          39599 5.053kB/s
BM_ProcessInputChunked              1689           1712          39726 5.053kB/s
BM_ProcessInputChunked              1699           1642          31726 6.599kB/s
BM_ProcessInputChunked              1686           1719          39580 5.053kB/s
BM_ProcessInputChunked              1685           1711          39837 5.044kB/s
BM_ProcessInputChunked              1693           1716          39636 5.053kB/s
BM_ProcessInputChunked              1693           1710          39783 5.053kB/s
BM_ProcessInputChunked              1711           1702          39922 5.060kB/s
BM_ProcessInputChunked_mean         1704           1706         417798 5.315kB/s
BM_ProcessInputChunked_stddev         17.9           33.2       417798 566.449B/s
```

Protected by adding google3 only performance test.

PiperOrigin-RevId: 869351347
