This is the mail archive of the rda@sourceware.org mailing list for the rda 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]

Re: [RFC] Improve performance of multi-threaded debugging


Kevin Buettner <kevinb@redhat.com> writes:
> As things stand now, the thread list is fetched each time rda checks
> the status of the program.  This doesn't sound like such a burden until
> you realize that some decent sized data structures are read via the
> ptrace() interface.  On slower machines, it can take a significant amount
> of time to single step or continue primarily due to this overhead.
>
> The patch below fetches the thread list only when it knows for certain
> that something has changed.
>
> The only fly in the ointment is that the signal based event model only
> knows about thread creation, but not about thread death.  So it won't
> catch thread death until some new thread is created.  I'm not sure
> what the implications of this are in practice.
>
> Comments?

Couldn't this be done dynamically?  That is, there are variables in
there that indicate whether we're using the signal-based model,
wherein I think we really do have to re-fetch the thread list all the
time, or the libthread_db-event-based model; wherein we don't.


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