EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: time discontinuity detected
From: "Jeff Hill" <[email protected]>
To: "'Andrew Johnson'" <[email protected]>, <[email protected]>, <[email protected]>
Date: Thu, 3 Feb 2011 16:55:39 -0700
> it appears that this approach is not compatible 
> with the use of a multi-core virtual machine

FWIW: The issue is probably related to the windows performance counter being
read directly off a timer tick-off register, but there can be an independent
copy of that hardware for each core. They fixed that issue in SMP versions
of Windows at some point in the past, but this virtual machine apparently
hasn't dealt with the issue.

Jeff
______________________________________________________
Jeffrey O. Hill           Email        [email protected]
LANL MS H820              Voice        505 665 1831
Los Alamos NM 87545 USA   FAX          505 665 5107

Message content: TSPA

With sufficient thrust, pigs fly just fine. However, this is
not necessarily a good idea. It is hard to be sure where they
are going to land, and it could be dangerous sitting under them
as they fly overhead. -- RFC 1925


> -----Original Message-----
> From: [email protected] [mailto:tech-talk-
> [email protected]] On Behalf Of Andrew Johnson
> Sent: Thursday, February 03, 2011 3:14 PM
> To: [email protected]; [email protected]
> Subject: Re: time discontinuity detected
> 
> Hi Carsten,
> 
> On Wednesday 02 February 2011 06:01:14 Carsten Winkler (HZB) wrote:
> > Epics time goes crazy if I run softIoc with Epics base 3.14.12 (with
> all
> > official patches) in a virtual machine.
> >
> > I use following configuration:
> >                        Hypervisor:   kvm
> >                        Architecture: x86_64
> >                        Guest:        Windows XP (32-bit)
> >
> > All works fine if I use a single core VM.
> >
> > But if I use two or more CPU cores Epics time does several funny
> actions.
> > * I also get events with a new value but previous time stamp.
> > * Timestamps are wrong and in the future.
> > * I get the message: "currentTime::getCurrentTime(): 7623636.000000sec
> time
> > discontinuity detected".
> 
> The Windows version of osdTime.cpp prints that message if it sees time
> going
> backwards.  The code uses a tries to improve the resolution with which it
> sees
> the current time using WIN32 high resolution performance counters, and it
> appears that this approach is not compatible with the use of a multi-core
> virtual machine.  This is the "PerfCounter" Current Time Provider that
> you
> should currently see listed in the output from the IOC's
> generalTimeReport
> command.
> 
> EPICS Base does allow you to register and use your own time providers
> though,
> so if you can identify a better approach for obtaining accurate high-
> resolution time from within a multi-core VM it is possible to write and
> install your own alternative to the built-in provider without having to
> make
> any changes to EPICS Base.
> 
> - Andrew
> --
> If a man is offered a fact which goes against his instincts, he will
> scrutinize it closely, and unless the evidence is overwhelming, he will
> refuse to believe it.  If, on the other hand, he is offered something
> which affords a reason for acting in accordance to his instincts, he
> will accept it even on the slightest evidence.  -- Bertrand Russell



References:
time discontinuity detected Carsten Winkler (HZB)
Re: time discontinuity detected Andrew Johnson

Navigate by Date:
Prev: RE: time discontinuity detected Jeff Hill
Next: Re: Trouble with mcaR6-12-4 and EPICS 3.14.12 (cygwin-x86) Carl Willis
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: time discontinuity detected Jeff Hill
Next: Trouble with mcaR6-12-4 and EPICS 3.14.12 (cygwin-x86) Carl Willis
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·