| Age | Commit message (Collapse) | Author |
|
string has length 1 (#160076)
Apple M4:
```
Benchmark Baseline Candidate Difference % Difference
----------------------------------------------------------- ---------- ----------- ------------ --------------
BM_string_literal/1024 16.99 16.79 -0.21 -1.21
BM_string_literal/128 3.44 3.34 -0.10 -2.88
BM_string_literal/16 1.80 1.69 -0.11 -5.93
BM_string_literal/2048 38.44 38.38 -0.07 -0.17
BM_string_literal/256 5.77 5.65 -0.12 -2.02
BM_string_literal/32 2.03 1.92 -0.11 -5.44
BM_string_literal/4096 73.92 73.74 -0.18 -0.25
BM_string_literal/512 9.49 9.41 -0.08 -0.84
BM_string_literal/64 2.59 2.45 -0.14 -5.38
BM_string_literal/8 1.79 1.69 -0.11 -5.90
BM_string_literal/8192 132.09 131.81 -0.28 -0.21
```
|
|
Since `__resize_default_init` is only ever used inside the dylib we can
remove the libc++-internal API and switch to the public one. This patch
inlines a bunch of functions that aren't required anymore and simplifies
the code that way.
|
|
Rewrite the sequence container benchmarks to only rely on the actual
operations specified in SequenceContainer requirements and add
benchmarks for std::list, which is also considered a sequence container.
One of the major goals of this refactoring is also to make these
container benchmarks run faster so that they can be run more frequently.
The existing benchmarks have the significant problem that they take so
long to run that they must basically be run overnight. This patch
reduces the size of inputs such that the rewritten benchmarks each take
at most a minute to run.
This patch doesn't touch the string benchmarks, which were not using the
generic container benchmark functions previously.
|
|
We strive to keep our benchmarks portable, so we should only
benchmark standard APIs.
|
|
Move various container benchmarks to the same subdirectory, and regroup
some format-related benchmarks.
|