On Wednesday, October 9th, 2024 at 4:43 PM, Eduard Zingerman <eddyz87@xxxxxxxxx> wrote: [...] > > Do you have the performance / memory usage stats for next vs this patch-set? Hi Eduard. Yes, I ran perf stat, and looked at max memory as reported by `/usr/bin/time -v`. The difference is insignificant compared to acmel/dwarves:next (a1241b0) [1]. See below. In terms of speed I didn't expect an improvement. It might have even gotten worse due to potential encoder threads synchronization when accessing elf_functions table. The table is now built once, but before the changes it was built once *per thread*. As for memory, no difference is a little surprising as we now have one table instead of N (where N is number of threads). But more stuff was added to elf_function, so I guess it ate all potential gains. Performance counter stats for './pahole -J -j8 --btf_features=encode_force,var,float,enum64,decl_tag,type_tag,optimized_func,consistent_func,decl_tag_kfuncs --btf_encode_detached=/dev/null --lang_exclude=rust ~/repo/bpf-dev-docker/linux/.tmp_vmlinux1' (31 runs): acmel/dwarves:next 68,904,383,016 cycles ( +- 0.30% ) 5.5862 +- 0.0304 seconds time elapsed ( +- 0.54% ) vs this patchset 68,235,717,886 cycles ( +- 0.30% ) 5.5550 +- 0.0412 seconds time elapsed ( +- 0.74% ) Memory on acmel/dwarves:next Maximum resident set size (kbytes): 1392640 Maximum resident set size (kbytes): 1394600 Maximum resident set size (kbytes): 1393788 Memory on this patchset: Maximum resident set size (kbytes): 1393564 Maximum resident set size (kbytes): 1394840 Maximum resident set size (kbytes): 1392348 [1] https://github.com/acmel/dwarves/commit/a1241b095de948becfed882929dda7c4318e022a