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: Andrew Johnson <[email protected]>
To: [email protected], [email protected]
Date: Thu, 3 Feb 2011 16:13:30 -0600
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


Replies:
RE: time discontinuity detected Jeff Hill
RE: time discontinuity detected Jeff Hill
References:
time discontinuity detected Carsten Winkler (HZB)

Navigate by Date:
Prev: EPICS Codeathon 2011 Andrew Johnson
Next: Re: USB-scopes, anyone? Steven M. Hartman
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 Michael Abbott
Next: RE: time discontinuity detected Jeff Hill
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 ·