[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 --- Comment #4 from Achim --- Looking at the code in objdump, it relies on bfd to return the line number information in constant time. This is what _should_ be happening if the debuginfo stash is actually working, but apparently it either doesn't for some files or recreation of info not in the stash takes a really long time so that O(1) becomes O(N) somehow for the line number lookup. -- You are receiving this mail because: You are on the CC list for the bug.
[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 --- Comment #3 from Achim --- No, the debuginfod is not enabled and the option has no effect other than a warning about E being an unrecognized debug letter option. Again, both extracting the line number information from the DWARF5 section and the disassembly alone doesn't produce anthing that looks unusual in terms of runtime. Disassembly runtime scales almost lineraly with amount of I/O, DWARF5 record extraction (which must do a fair bit of interpretation of the records I assume rather seems to scale roughly linearly by number of records. objdump 2.41-3 -d -l gcc-ar.exe 0.031u 0.062s 0:00.08 112.5% 0+0k 0+0io 3332pf+0w gcc-ranlib.exe 0.031u 0.000s 0:00.06 50.0% 0+0k 0+0io 3332pf+0w gcc-nm.exe 0.046u 0.015s 0:00.07 71.4% 0+0k 0+0io 3344pf+0w gcov-dump.exe 2.125u 0.046s 0:02.24 96.4% 0+0k 0+0io 4695pf+0w gcov.exe 2.765u 0.000s 0:02.97 92.9% 0+0k 0+0io 7077pf+0w collect2.exe 2.953u 0.000s 0:03.26 90.4% 0+0k 0+0io 4746pf+0w gcov-tool.exe 3.078u 0.031s 0:03.09 100.3% 0+0k 0+0io 4714pf+0w gnatkr.exe 4.218u 0.030s 0:04.31 98.3% 0+0k 0+0io 8583pf+0w gnatlink.exe 4.374u 0.000s 0:04.49 97.3% 0+0k 0+0io 9394pf+0w gnat.exe 4.406u 0.015s 0:04.54 97.1% 0+0k 0+0io 8995pf+0w lto-wrapper.exe4.718u 0.015s 0:04.96 95.1% 0+0k 0+0io 6682pf+0w gnatfind.exe 4.859u 0.046s 0:05.09 96.0% 0+0k 0+0io 10604pf+0w gnatxref.exe 4.984u 0.031s 0:05.32 94.1% 0+0k 0+0io 10596pf+0w gnatchop.exe 5.125u 0.030s 0:05.22 98.6% 0+0k 0+0io 10846pf+0w gnatclean.exe 5.828u 0.031s 0:06.14 95.2% 0+0k 0+0io 14015pf+0w gnatname.exe 5.968u 0.061s 0:06.18 97.4% 0+0k 0+0io 13581pf+0w gnatprep.exe 6.093u 0.000s 0:06.19 98.3% 0+0k 0+0io 14091pf+0w gnatls.exe 6.187u 0.000s 0:06.39 96.7% 0+0k 0+0io 14690pf+0w gnatmake.exe 6.281u 0.031s 0:06.76 93.3% 0+0k 0+0io 15692pf+0w gfortran.exe 6.593u 0.015s 0:06.98 94.5% 0+0k 0+0io 6736pf+0w cpp.exe6.703u 0.000s 0:06.97 96.1% 0+0k 0+0io 6731pf+0w gdc.exe7.000u 0.030s 0:07.00 100.4% 0+0k 0+0io 6735pf+0w gnatbind.exe 13.406u 0.000s 0:13.88 96.5% 0+0k 0+0io 7892pf+0w lto-dump.exe1764.452u 7.656s 32:35.54 90.6% 0+0k 0+0io 34002pf+0w lto1.exe1799.812u 7.406s 33:06.78 90.9% 0+0k 0+0io 34351pf+0w f951.exe2075.375u 6.562s 37:54.62 91.5% 0+0k 0+0io 35373pf+0w cc1.exe 2105.890u 7.593s 38:24.45 91.7% 0+0k 0+0io 34919pf+0w gnat1.exe 2281.406u 6.656s 41:16.20 92.4% 0+0k 0+0io 36665pf+0w d21.exe 2320.968u 8.031s 42:03.11 92.3% 0+0k 0+0io 36393pf+0w cc1plus.exe 2322.546u 7.812s 42:01.87 92.4% 0+0k 0+0io 37496pf+0w cc1objplus.exe 2398.765u 7.859s 43:19.73 92.5% 0+0k 0+0io 37661pf+0w objdump 2.41-3 -d gcc-ar.exe 0.015u 0.000s 0:00.03 33.3% 0+0k 0+0io 3388pf+0w 5523 gcc-ranlib.exe 0.015u 0.015s 0:00.03 66.6% 0+0k 0+0io 3387pf+0w 5523 gcc-nm.exe 0.031u 0.015s 0:00.03 133.3% 0+0k 0+0io 3389pf+0w 5523 gcov-dump.exe 0.484u 0.000s 0:00.60 80.0% 0+0k 0+0io 3966pf+0w 143895 collect2.exe 0.546u 0.000s 0:00.68 79.4% 0+0k 0+0io 4012pf+0w 160080 gcov-tool.exe 0.546u 0.000s 0:00.62 87.0% 0+0k 0+0io 3997pf+0w 150923 cpp.exe0.703u 0.015s 0:01.02 69.6% 0+0k 0+0io 4494pf+0w 241130 lto-wrapper.exe0.796u 0.000s 0:00.89 88.7% 0+0k 0+0io 4426pf+0w 218062 gfortran.exe 0.875u 0.062s 0:00.98 94.8% 0+0k 0+0io 4487pf+0w 241676 gcov.exe 0.890u 0.015s 0:00.89 101.1% 0+0k 0+0io 4780pf+0w 218018 gdc.exe0.921u 0.015s 0:00.98 94.8% 0+0k 0+0io 4488pf+0w 241859 gnatkr.exe 0.936u 0.000s 0:01.00 93.0% 0+0k 0+0io 4638pf+0w 244411 gnat.exe 0.953u 0.015s 0:01.03 93.2% 0+0k 0+0io 4694pf+0w 259251 gnatlink.exe 1.015u 0.030s 0:01.11 93.6% 0+0k 0+0io 4759pf+0w 274573 gnatxref.exe 1.187u 0.030s 0:01.30 93.0% 0+0k 0+0io 4866pf+0w 328849 gnatfind.exe 1.218u 0.015s 0:01.27 96.0% 0+0k 0+0io 4871pf+0w 329068 gnatchop.exe 1.437u 0.000s 0:01.33 107.5% 0+0k 0+0io 4894pf+0w 334560 gnatprep.exe 1.625u 0.015s 0:01.83 89.0% 0+0k 0+0io 5393pf+0w 467170 gnatclean.exe 1.703u 0.015s 0:01.82 93.9% 0+0k 0+0io 5389pf+0w 464192 gnatname.exe 1.718u 0.031s 0:01.76 98.8% 0+0k 0+0io 5325pf+0w 447727 gnatls.exe 1.843u 0.000s 0:01.96 93.8% 0+0k 0+0io 5473pf+0w 491418 gnatbind.exe 1.984u 0.015s 0:02.23 89.2% 0+0k 0+0io 5506pf+0w 563078 gnatmake.exe 2.046u 0.015s 0:02.09 98.0% 0+0k 0+0io 5585pf+0w 447727 lto-dump.exe 15.359u 0.015s 0:16.16 95.0% 0+0k 0+0io 30823pf+0w 6836384 lto1.exe 15.390u 0.046s 0:16.41 94.0% 0+0k 0+0io 30811pf+0w 6836218 cc1.exe 16.562u 0.078s 0:17.90 92.9% 0+0k 0+0io 31598pf+0w 7102189 d21.exe 17.265u 0.156s 0:18.38 94.7% 0+0k 0+0io 32801pf+0w
[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 Nick Clifton changed: What|Removed |Added CC||nickc at redhat dot com --- Comment #2 from Nick Clifton --- Hi Achim, Is the Cygwin version of objdump build with debuginfod support enabled ? If so, does adding -wE or --dwarf=do-not-use-debuginfod to the command line improve the performance times ? I suspect that the presence of the -l option is the trigger for the slow down, since this means that the debug information has to be processed in order to determine the line numbers. Processing DWARF is a slow business and it has only become slower over successive releases as bug fixing means that more care has to be taken to handle all the possible intricacies. Hence - as a workaround, could you omit the use of the -l option ? Cheers Nick -- You are receiving this mail because: You are on the CC list for the bug.
[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 --- Comment #1 from Achim --- The preformance regression is unrelated to bug#30724. Results for running "objdump -l -d" in various versions on the same gcc-11.4 build directory: objdump 2.39 gcc-ar.exe0.000u 0.000s 0:00.03 0.0% 0+0k 0+0io 3435pf+0w gcc-nm.exe0.000u 0.000s 0:00.03 0.0% 0+0k 0+0io 3436pf+0w gcc-ranlib.exe0.015u 0.000s 0:00.04 25.0% 0+0k 0+0io 3439pf+0w gcov-dump.exe 1.046u 0.000s 0:01.05 99.0% 0+0k 0+0io 4816pf+0w collect2.exe 1.187u 0.000s 0:01.39 84.8% 0+0k 0+0io 4875pf+0w gcov-tool.exe 1.250u 0.015s 0:01.37 91.9% 0+0k 0+0io 4857pf+0w gcov.exe 1.390u 0.000s 0:01.50 92.6% 0+0k 0+0io 7264pf+0w lto-wrapper.exe 1.796u 0.015s 0:02.05 87.8% 0+0k 0+0io 6865pf+0w gnatkr.exe2.000u 0.030s 0:02.03 100.0% 0+0k 0+0io 8786pf+0w gnat.exe 2.062u 0.015s 0:02.17 95.3% 0+0k 0+0io 9225pf+0w gnatlink.exe 2.093u 0.015s 0:02.24 93.7% 0+0k 0+0io 9614pf+0w gnatfind.exe 2.436u 0.015s 0:02.55 95.6% 0+0k 0+0io 10834pf+0w gnatchop.exe 2.453u 0.046s 0:02.59 96.1% 0+0k 0+0io 11102pf+0w gnatxref.exe 2.561u 0.031s 0:02.51 103.1% 0+0k 0+0io 10843pf+0w gfortran.exe 2.671u 0.031s 0:02.60 103.8% 0+0k 0+0io 6934pf+0w gnatclean.exe 3.250u 0.031s 0:03.62 90.6% 0+0k 0+0io 14318pf+0w gnatprep.exe 3.296u 0.015s 0:03.49 94.5% 0+0k 0+0io 14389pf+0w gnatname.exe 3.312u 0.015s 0:03.40 97.6% 0+0k 0+0io 13866pf+0w gnatmake.exe 3.484u 0.046s 0:03.80 92.6% 0+0k 0+0io 16010pf+0w gnatls.exe3.562u 0.031s 0:03.53 101.6% 0+0k 0+0io 14998pf+0w gnatbind.exe 5.312u 0.031s 0:05.55 96.2% 0+0k 0+0io 8087pf+0w lto-dump.exe569.250u 0.750s 10:09.66 93.4% 0+0k 0+0io 35970pf+0w lto1.exe571.968u 0.390s 10:11.07 93.6% 0+0k 0+0io 35402pf+0w f951.exe755.796u 0.468s 13:17.20 94.8% 0+0k 0+0io 36542pf+0w cc1.exe 758.156u 0.515s 13:19.18 94.9% 0+0k 0+0io 36959pf+0w gnat1.exe 810.328u 0.702s 14:12.46 95.1% 0+0k 0+0io 38941pf+0w cc1objplus.exe 901.734u 0.812s 15:45.78 95.4% 0+0k 0+0io 39698pf+0w cc1plus.exe 977.656u 0.578s 16:59.69 95.9% 0+0k 0+0io 39439pf+0w d21.exe1106.406u 0.421s 19:09.61 96.2% 0+0k 0+0io 38081pf+0w objdump 2.40 gcc-ar.exe0.000u 0.000s 0:00.03 0.0% 0+0k 0+0io 3458pf+0w gcc-nm.exe0.000u 0.000s 0:00.03 0.0% 0+0k 0+0io 3449pf+0w gcc-ranlib.exe0.000u 0.000s 0:00.04 0.0% 0+0k 0+0io 3454pf+0w gcov-dump.exe 0.937u 0.000s 0:01.12 83.0% 0+0k 0+0io 4846pf+0w collect2.exe 1.187u 0.000s 0:01.36 86.7% 0+0k 0+0io 4885pf+0w gcov-tool.exe 1.327u 0.046s 0:01.30 104.6% 0+0k 0+0io 4870pf+0w gcov.exe 1.406u 0.000s 0:01.50 93.3% 0+0k 0+0io 7256pf+0w gnat.exe 1.765u 0.031s 0:02.07 86.4% 0+0k 0+0io 9176pf+0w lto-wrapper.exe 1.781u 0.030s 0:01.84 98.3% 0+0k 0+0io 6836pf+0w gnatkr.exe1.953u 0.062s 0:01.95 103.0% 0+0k 0+0io 8762pf+0w gnatlink.exe 2.109u 0.015s 0:02.11 100.0% 0+0k 0+0io 9578pf+0w cpp.exe 2.218u 0.031s 0:02.53 88.5% 0+0k 0+0io 6916pf+0w gnatfind.exe 2.296u 0.061s 0:02.50 94.0% 0+0k 0+0io 10787pf+0w gnatchop.exe 2.358u 0.046s 0:02.57 92.9% 0+0k 0+0io 11017pf+0w gnatxref.exe 2.359u 0.015s 0:02.45 96.3% 0+0k 0+0io 10763pf+0w gdc.exe 2.436u 0.015s 0:02.63 92.7% 0+0k 0+0io 6905pf+0w gfortran.exe 2.453u 0.015s 0:02.56 96.0% 0+0k 0+0io 6907pf+0w gnatprep.exe 3.093u 0.031s 0:03.35 93.1% 0+0k 0+0io 14292pf+0w gnatname.exe 3.125u 0.015s 0:03.17 98.7% 0+0k 0+0io 13776pf+0w gnatclean.exe 3.218u 0.093s 0:03.46 95.3% 0+0k 0+0io 14215pf+0w gnatmake.exe 3.406u 0.061s 0:03.72 93.0% 0+0k 0+0io 15897pf+0w gnatls.exe3.484u 0.030s 0:03.52 99.7% 0+0k 0+0io 14897pf+0w gnatbind.exe 5.250u 0.030s 0:05.27 100.1% 0+0k 0+0io 8061pf+0w lto1.exe578.750u 0.640s 10:20.99 93.3% 0+0k 0+0io 35910pf+0w lto-dump.exe586.765u 0.531s 10:30.07 93.2% 0+0k 0+0io 35379pf+0w f951.exe792.859u 0.500s 13:58.40 94.6% 0+0k 0+0io 36740pf+0w cc1.exe 842.187u 0.640s 14:50.09 94.6% 0+0k 0+0io 36959pf+0w gnat1.exe 865.765u 0.734s 15:15.06 94.6% 0+0k 0+0io 39099pf+0w cc1plus.exe 935.328u 0.531s 16:22.22 95.2% 0+0k 0+0io 39441pf+0w cc1objplus.exe 962.718u 0.375s 16:48.90 95.4% 0+0k 0+0io 39544pf+0w d21.exe1116.828u 0.531s 19:24.78 95.9% 0+0k 0+0io 38061pf+0w objdump 2.41 gcc-ar.exe0.031u 0.000s 0:00.05 60.0% 0+0k 0+0io 3445pf+0w gcc-nm.exe0.031u 0.000s 0:00.06 50.0% 0+0k 0+0io 3449pf+0w gcc-ranlib.exe0.031u 0.000s 0:00.04 75.0% 0+0k 0+0io 3461pf+0w gcov-dump.exe 2.031u 0.046s 0:02.17 95.3% 0+0k 0+0io 4828pf+0w collect2.exe 2.859u 0.000s 0:03.11 91.6% 0+0k 0+0io 4888pf+0w gcov.exe 2.906u 0.000s 0:03.06 94.7% 0+0k 0+0io 7215pf+0w gcov-tool.exe 2.953u 0.015s 0:0
[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 Sam James changed: What|Removed |Added CC||sam at gentoo dot org -- You are receiving this mail because: You are on the CC list for the bug.
[Bug binutils/30725] severe objdump performance regression
https://sourceware.org/bugzilla/show_bug.cgi?id=30725 Hannes Domani changed: What|Removed |Added CC||ssbssa at sourceware dot org -- You are receiving this mail because: You are on the CC list for the bug.