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  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Sequencer seem to skip states with EPICS 3.16.1
From: Ralph Lange <[email protected]>
To: EPICS Tech Talk <[email protected]>
Date: Wed, 31 Jan 2018 22:00:37 +0100
On Wed, Jan 31, 2018 at 7:18 PM, Benjamin Franksen <[email protected]> wrote:
> Some more testing showed that the same IOC build for linux-x86_64 is
> running as expect on my machine.
> So there seem to be a problem running this on linux-ppc.

Interesting. That confirms my suspicion that this is a problem in base,
not the sequencer; my guess is that any fast enough sequence of ca_put
operations on the same PV exhibits this problem (on this architecture).

Just a blind guess: could it be something about fast mutexes / spin
locks and how these are implemented for linux-ppc? I am not using these
in the sequencer, but they are used inside EPICS base (they have been
introduced in 3.15 or 3.16).

Another guess: wasn't there a problem report regarding put_notify a
while ago? Perhaps this is related.

Do we have tests in base for CA clients? If so, it might be possible to
adapt such a test so that it rapidly issues ca_put calls (with callback)
to the same PV and then see if camonitor sees all the events it should see.

Another angle that could be involved: does the sequencer program run on
the same IOC that serves the PV or a different one?

(Sorry for the brainstorming)

More brainstorming:
What's the setting for the thread scheduler policy? Preemptive posix thread priority scheduling makes IOCs act different than under the default Linux scheduler.
How many CPU cores do your linux-ppc and linux-x86_64 machines have?

Both could affect a low priority CA thread to get / not get scheduled while the state machine thread is switching through states.

Cheers,
~Ralph

References:
Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Re: Sequencer seem to skip states with EPICS 3.16.1 Ralph Lange
Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Re: Sequencer seem to skip states with EPICS 3.16.1 Ralph Lange
Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Re: Sequencer seem to skip states with EPICS 3.16.1 Benjamin Franksen
Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Re: Sequencer seem to skip states with EPICS 3.16.1 Benjamin Franksen

Navigate by Date:
Prev: Re: Suggest EPICS Base series type definitions on website Andrew Johnson
Next: Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Sequencer seem to skip states with EPICS 3.16.1 Benjamin Franksen
Next: Re: Sequencer seem to skip states with EPICS 3.16.1 Simon Reiter
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 31 Jan 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·