This is the mail archive of the gdb@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]

Re: UndoDB's performance


Sean Chen wrote:
On Tue, Dec 15, 2009 at 11:56 AM, Hui Zhu <teawater@gmail.com> wrote:
I did some test but its speed close to prec.  Some others was better.
Maybe it have some special performance technology for some code.

Hui

On Tue, Dec 15, 2009 at 10:40, Sean Chen <sean.chen1234@gmail.com> wrote:
On Mon, Dec 14, 2009 at 11:07 PM, Hui Zhu <teawater@gmail.com> wrote:
Try undodb.

On Mon, Dec 14, 2009 at 21:18, Sean Chen <sean.chen1234@gmail.com> wrote:
On Mon, Dec 14, 2009 at 7:14 PM, Hui Zhu <teawater@gmail.com> wrote:
gdb-7 reverse debugging accelerator.
Regular gdb-7 reverse runs apps          40,000x                slower
UndoDB+gdb-7 reverse runs apps           1.7x            slower!


Are you really do some try? I suggest you do some test on it. :)

Thanks,
Hui

On Fri, Dec 4, 2009 at 23:34, Sean Chen <sean.chen1234@gmail.com> wrote:
On UndoDb’s website, I saw the following ad.

Regular gdb-7 reverse runs apps 40,000x slower
UndoDB+gdb-7 reverse runs apps 1.7x slower!

In my experiment, gdb-7 reverse does run apps more than 20,000x
slower. How does UndoDB improve the performance so much without a
simulator and without record? Below is its self-introduction on the
website. UndoDB's "snapshot-and-replay" technique stores periodic
copy-on-write snapshots of the application and only non-deterministic
inputs (system calls, thread-switches, shared memory reads, etc).

Are there any obvious disadvantages in UndoDB? I tried to search
UndoDB in the archive of the mailing list, however, little discussion
is found.

--
Best Regards,
Sean Chen

That’s UndoDB’s ad on its website.

In my experiment, gdb-7 reverse runs apps about 22,000x slower.

--
Best Regards,
Sean Chen

I also tried UndoDB, and it is really fast. So I am sure they are
using different strategy.

--
Best Regards,
Sean Chen


It might not use process record technique like your design.


Below is its self-introduction on its website.
UndoDB's "snapshot-and-replay" technique stores periodic copy-on-write
snapshots of the application and only non-deterministic inputs (system
calls, thread-switches, shared memory reads, etc).

Any comments?

Yes, I can confirm that's what we do. We did it that way (and generally tried very hard) to get the best record-time performance. To answer the OP, the downside is replay mode performance, namely stepping backwards, will be worse because you have a lot more work to do. You also need to store the snapshots, although as noted, copy-on-write can mitigate this cost.


Greg
--
Greg Law, Undo Software                       http://undo-software.com/


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