This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug gdb/13498] save-index makes gdb slow with dwarf4


http://sourceware.org/bugzilla/show_bug.cgi?id=13498

Tom Tromey <tromey at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tromey at redhat dot com
         AssignedTo|unassigned at sourceware    |tromey at redhat dot com
                   |dot org                     |

--- Comment #3 from Tom Tromey <tromey at redhat dot com> 2012-02-17 21:48:26 UTC ---
Thanks for your analysis.  It was very helpful.

The LibreOffice build crushed my machine, I'm sure you've heard this
before :), but I was able to reproduce the problem to my satisfaction
just with libooxlo.so.  So far I've only built with DWARF-4 and .debug_types
(if you are using a recent Fedora you must also specify -fdebug-types-section).
I can definitely see a slowdown when moving from the non-indexed to the indexed
library (times from "maint time 1", which irritatingly does not work with
-ex options):

No index
(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 0.118982 (cpu), 0.120245 (wall)
(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 0.123981 (cpu), 0.125739 (wall)

Index
(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 4.362337 (cpu), 4.382212 (wall)
(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 3.187515 (cpu), 3.201839 (wall)


With a reasonably simple patch I can get this down to:

(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 1.255809 (cpu), 1.260110 (wall)
(gdb) complete break int_CRYPTO_set_do_dynlock_call
break int_CRYPTO_set_do_dynlock_callback
Command execution time: 0.111983 (cpu), 0.112815 (wall)

... the first completion is still quite slow, but later ones
are fast.

Further investigation and fixes will have to wait until next week.
I'll attach my WIP patch momentarily.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]