Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add benchmark for ELF "str2symtab" creation
Add a benchmark for the creation of our ELF "str2symtab". This creation should trigger a good chunk of our data structure traversing and "parsing" paths. The performance is roughly as follows: $ cargo bench --features=nightly -- bench_str2sym_creation > test elf::parser::tests::bench_str2sym_creation ... bench: 26,023,493.50 ns/iter (+/- 644,362.62) The main reason for the addition of the benchmark is to get an idea how much performance we lost due to recent ELF parser changes: both the introduction of 32 bit support as well as the logic for working with different backends is assumed to have some runtime impact. Backporting the benchmark on top of commit 4688aa0 ("cli: Rework tracing output") results in the following performance numbers before said ELF changes: $ cargo bench --features=nightly -- bench_str2sym_creation > test elf::parser::tests::bench_str2sym_creation ... bench: 25,233,120.60 ns/iter (+/- 496,742.81) The difference is reproducible, but arguably small and acceptable. We may be able to speed things up a bit more via the usage of smaller indexes. Signed-off-by: Daniel Müller <[email protected]>
- Loading branch information