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  2018  2019  2020  <20212022  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  2018  2019  2020  <20212022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Reliability of caput
From: Michael Davidsaver via Tech-talk <tech-talk at aps.anl.gov>
To: "Wang, Andrew" <wang126 at llnl.gov>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Mon, 20 Dec 2021 21:15:57 -0800
On 12/20/21 4:22 PM, Wang, Andrew via Tech-talk wrote:
> All,
> 
>  
> 
> Quick question.
> 
>  
> 
> Suppose I have two analog input records called “A” and “B” on which I would like to do caput. If I have a bash script containing the following code:
> 
>  
> 
> caput A 100
> 
> caput B 200
> 
>  
> 
> Will that give sufficient time for caput to respond? Or should there ideally be a “delay” between each caput. The reason why I ask is because within the sequencer, we do something similar, but with pvPut, and sometimes we see that “B” does not get updated with a new value.

By default, ordering w/ CA (and PVA) is not strict.  As you have found
in the situation you describe, it is possible for the effects of B to
precede A.  With CA this can be made stricter with the ca_put_callback
operation.

> caput -c A 100
> caput -c B 200

Adding '-c' will cause caput to wait for the server/IOC to confirm that
the PUT has been completely processed before exiting.  (note also '-w'
for a timeout on this wait)

It's been awhile since I did this in the sequencer.  As I read it, passing
ASYNC or SYNC to pvPut() has the same effect as '-c'.  The difference
between these two modifiers is in how your sequencer program will need to
be adjusted to wait for the PUT operation(s) to complete.

cf. pvPut(), pvPutComplete(), pvPutCancel(), and the pvArray*() variants.

https://www-csr.bessy.de/control/SoftDist/sequencer/Reference.html?highlight=pvput#pvput

References:
Reliability of caput Wang, Andrew via Tech-talk

Navigate by Date:
Prev: Re: Reliability of caput J. Lewis Muir via Tech-talk
Next: Multiple IOCs on a remote server Randall Cayford via Tech-talk
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  2018  2019  2020  <20212022  2023  2024 
Navigate by Thread:
Prev: Re: Reliability of caput J. Lewis Muir via Tech-talk
Next: Multiple IOCs on a remote server Randall Cayford via Tech-talk
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  2018  2019  2020  <20212022  2023  2024 
ANJ, 21 Dec 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·