From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:44535) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qvwqi-0004q8-B3 for qemu-devel@nongnu.org; Tue, 23 Aug 2011 15:41:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qvwqg-0002qQ-SR for qemu-devel@nongnu.org; Tue, 23 Aug 2011 15:41:24 -0400 Received: from mail-fx0-f45.google.com ([209.85.161.45]:43398) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qvwqg-0002qM-IF for qemu-devel@nongnu.org; Tue, 23 Aug 2011 15:41:22 -0400 Received: by fxbb27 with SMTP id b27so543903fxb.4 for ; Tue, 23 Aug 2011 12:41:21 -0700 (PDT) Date: Tue, 23 Aug 2011 21:41:18 +0200 From: "Edgar E. Iglesias" Message-ID: <20110823194118.GC32250@zapo> References: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Subject: Re: [Qemu-devel] Execute QEMU "the same" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Lyu Mitnick Cc: qemu-devel@nongnu.org On Tue, Aug 23, 2011 at 07:04:43PM +0800, Lyu Mitnick wrote: > Hello all, > > I am wondering to know whether QEMU could run "the same" twice. ie. > the same of execution trace. > I read the user manual and find options like:  "-clock dynticks -rtc > base=2006-06-17T16:01:21,clock=vm -icount 1". > Would QEMU run "the same" with these options?? > > PS. I also found the function cpu_io_recompile() with comments: >       /* in deterministic execution mode, instructions doing device I/Os >          must be at the end of the TB */ >       But I don't know the means of deterministic execution mode and how to > turn on it. > > thanks a lot Hi, I think so, yes. But it really depends on what you are doing. I've gotten good results, but only tested it on CRIS with models of boards that dont have peripherals that interact with the outside. For example, the board in question has a CRIS and a couple of devices that compute stuff or generate data but do not interact with the outside world. External IO (such as you typing stuff into a simulated uart) will ofcourse not be deterministic. Cheers