public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Paul Schlie <schlie@comcast.net>
To: Daniel Jacobowitz <drow@false.org>
Cc: Dan Shearer <dan@shearer.org>, <gdb@sources.redhat.com>
Subject: Re: [discuss] Support for reverse-execution
Date: Sat, 21 May 2005 14:13:00 -0000	[thread overview]
Message-ID: <BEB4BA30.A3C4%schlie@comcast.net> (raw)
In-Reply-To: <20050521015245.GA17463@nevyn.them.org>

> From: Daniel Jacobowitz <drow@false.org>
> On Fri, May 20, 2005 at 09:41:58PM -0400, Paul Schlie wrote:
>> - Supporting HW co-simulation is certainly interesting, but fundamentally
>>   no different; it only extends the definition of "state" typically by
>>   literally exposing some of the logical CPU/I/O/Peripheral/outside-world
>>   state in various levels of details depending on the goals of the model,
>>   and/or simulation itself. (but would guess likely beyond the near term
>>   goals of attempting to enable GDB support for basic reversible execution?)
> 
> Why should it be?  This is another reason that I consider the simulator
> a perfectly reasonable place to have the logic.

- The predominant downside of such a presumption, is that then NxM targets
  would need to add support to broadly enable the capability, rather than
  broadly enabling within GDB, while allowing a target to improve it.
  
> Frank has contributed that sid would more readily support the sort of
> snapshot-based reconstruction that you're talking about (thanks Frank).
> I think that allowing the target to provide infrun with a view in which
> "single step backwards" is possible and then implementing that under
> the covers in the target stack would still be the way to go.

- Possibly the only reasonable way to do, as the ability to "single step
  backwards" to a state with the simulation environment may have never
  previously terminated at is substantially more difficult to support
  efficiently than simply reverting to a previously reached stable state.

> - but I don't think that's a legitimate objection to supporting a smart
> simulator which does it internally.

- I only object (or observe alternatives) to defining a set of commands
  which are presently apparently unique to a particular commercial tool's
  abilities, and which if presumed to form the basis of the requirements
  for reversible simulation could become an impediment for GDB to support
  simpler more easily implemented facilities. Conversely, if it were
  initially presumed that the initial basis for reversible simulation were
  based on the support of a recursive "undo/reverse" command, then it would
  be much easier for a broader number of targets (and even potentially GDB
  itself) to support.

> When someone implements reversible debugging in a free simulator and
> wants to integrate that with GDB, they'll have the choice of doing the
> remaining steps in their simulator or in GDB.

- Although our views may differ, I accept and support the simple reality
  that those to invest the time and resources in a development, have the
  greatest say in the decisions. (In this case if the desire is to define
  an interface for a single lone proprietary tool, likely in satisfaction or
  natural result of a commercial commercial contract to do so, then let it
  be; but attempting to justify it as a good thing is a bit of a stretch).

>>   [And suspect you'll find that most HW savvy simulation environments have
>>    very limited if any support for "reversible" simulation, beyond
>>    checkpoint-restart. As on a cycle by cycle basis, tracking and recording
>>    incremental state changes would typically cripple the simulation, and
>>    potentially even exhaust disk storage for complex models, but limited
>>    forms do exist, and are useful.]
> 
> You might want to read the papers on the specific simulator we're
> discussing using as a starting point; you can find the white paper on
> Virtutech's web site.  Under the covers, of course, it's probably
> checkpoint based.  But it's efficient, automatic checkpointing such
> that it can provide a reversible view over useful periods of time.
> Complete with "HW savvy" details.

- Thank you.


  parent reply	other threads:[~2005-05-21 14:13 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-20 15:49 Paul Schlie
2005-05-20 17:41 ` Dan Shearer
2005-05-20 22:01   ` Paul Schlie
2005-05-20 22:08     ` Daniel Jacobowitz
2005-05-20 22:43       ` Paul Schlie
2005-05-21  0:58         ` Daniel Jacobowitz
2005-05-21  1:42           ` Paul Schlie
2005-05-21  1:53             ` Daniel Jacobowitz
2005-05-21  1:56               ` Daniel Jacobowitz
2005-05-21 15:03                 ` Paul Schlie
2005-05-21 14:13               ` Paul Schlie [this message]
2005-05-21 14:23                 ` Daniel Jacobowitz
2005-05-21 15:04                   ` Paul Schlie
2005-05-20 20:58 ` Michael Snyder
2005-05-20 21:35   ` Paul Schlie
  -- strict thread matches above, loose matches on Subject: below --
2005-05-21 15:53 Paul Schlie
2005-05-20 22:11 Michael Snyder
2005-05-20 23:32 ` Paul Schlie
2005-05-20 21:59 Michael Snyder
2005-05-20 21:51 Michael Snyder
2005-05-21  9:44 ` Eli Zaretskii
2005-05-20 21:44 Michael Snyder
2005-05-20 21:25 Michael Snyder
2005-05-20 21:16 Michael Snyder
2005-05-20 21:31 ` Daniel Jacobowitz
2005-05-21  9:39 ` Eli Zaretskii
2005-05-23 18:19   ` Michael Snyder
2005-05-20 21:11 Michael Snyder
2005-05-20 21:27 ` Daniel Jacobowitz
2005-05-20 19:02 Michael Snyder
2005-05-20 20:43 ` Eli Zaretskii
2005-05-20 21:03   ` Michael Snyder
2005-05-19  1:23 Dan Shearer
2005-05-19 13:01 ` Johan Rydberg
2005-05-19 13:18   ` Daniel Jacobowitz
2005-05-19 13:47     ` Johan Rydberg
2005-05-20 10:37   ` Eli Zaretskii
2005-05-20 11:37     ` Andreas Schwab
2005-05-20 13:18       ` Daniel Jacobowitz
2005-05-20 13:36         ` Fabian Cenedese
2005-05-20 13:47           ` Daniel Jacobowitz
2005-05-20 14:41       ` Eli Zaretskii
2005-05-20 22:14         ` Daniel Jacobowitz
2005-05-20 12:22     ` Johan Rydberg
2005-05-20 13:19       ` Daniel Jacobowitz
2005-05-20 14:12       ` Eli Zaretskii
2005-05-20 13:14     ` Daniel Jacobowitz
2005-05-20 14:34       ` Eli Zaretskii
2005-05-20 15:40       ` Johan Rydberg
2005-05-20 10:47 ` Eli Zaretskii
2005-05-16 17:47 Dan Shearer
2005-05-16 18:04 ` Dan Shearer
2005-05-20 18:15 ` Daniel Jacobowitz
2005-05-21  0:05   ` Frank Ch. Eigler
2005-05-21 10:13     ` Eli Zaretskii
2005-05-21 10:28       ` Russell Shaw
2005-05-21 12:38         ` Eli Zaretskii
2005-05-21 12:55           ` Russell Shaw
2005-05-21 14:39           ` Russell Shaw
2005-05-21 14:19       ` Daniel Jacobowitz
2005-05-21 15:46         ` Eli Zaretskii
2005-05-21 17:43           ` Daniel Jacobowitz
2005-05-23 19:39             ` Dan Shearer
2005-05-12 23:08 Michael Snyder
2005-05-13  6:23 ` Eli Zaretskii
2005-05-19 13:46   ` Daniel Jacobowitz
2005-05-19 18:46     ` Michael Snyder
2005-05-19 19:26       ` Johan Rydberg
2005-05-20 10:55     ` Eli Zaretskii
2005-05-20 13:04       ` Daniel Jacobowitz
2005-05-20 14:30         ` Eli Zaretskii
2005-05-20 14:43           ` Andreas Schwab
2005-05-20 20:48         ` Michael Snyder
2005-05-20 20:51           ` Daniel Jacobowitz
2005-05-20 20:38     ` Michael Snyder
2005-05-20 15:05 ` Vladimir Prus
2005-05-20 15:58   ` Eli Zaretskii
2005-05-20 18:14     ` Daniel Jacobowitz
2005-05-20 18:30       ` Eli Zaretskii
2005-05-20 19:27   ` Stan Shebs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BEB4BA30.A3C4%schlie@comcast.net \
    --to=schlie@comcast.net \
    --cc=dan@shearer.org \
    --cc=drow@false.org \
    --cc=gdb@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).