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  <20082009  2010  2011  2012  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  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: RE: Loosing half the monitor callbacks
From: Dehong Zhang <[email protected]>
To: Mark Rivers <[email protected]>
Cc: [email protected]
Date: Mon, 11 Aug 2008 15:38:51 -0500
Hi Mark and other friends,

Sorry to cause all the noise.  I think it is working now.

This is one of my own records, it has some floats and some arrays fields.  For the
array which I would like to monitor, I created 2 buffers and let cvt_dbaddr assign one
for user to access while the other is being filled up, then switch.  Then I had another
complication: I also wanted to monitor a float field.  so I was doing:
db_post_event ( for the float)
db_post_event ( for the array whose address toggles between 2 candidates)

Anyway, when I removed the monitoring for the float, and implemented a single
buffer for the array (now I have to memcpy), it seems to be working.  I will try
some combinations to see what exactly was causing all the trouble.

Thank you all very much!  Best regards,
Dehong





----- Original Message -----
From: Mark Rivers <[email protected]>
Date: Monday, August 11, 2008 1:45 pm
Subject: RE: Loosing half the monitor callbacks
To: Dehong Zhang <[email protected]>, Tim Mooney <[email protected]>
Cc: [email protected]


> You need to tell us:
> 
> - What records are you using?  Are these standard EPICS records, or
> records you have written.
> 
> - What device support are you using?  Did you write it?
> 
> I don't believe there is any problem with posting monitors on waveforms
> at >10Hz, I do it frequently and I don't think I am having any problem.
> 
> I suspect there is a problem in your record support or device support.
> 
> Can you send the code where the calls to db_post_events is done?
> 
> Mark
> 
> 
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Dehong Zhang
> Sent: Monday, August 11, 2008 1:34 PM
> To: Tim Mooney
> Cc: [email protected]
> Subject: Re: Loosing half the monitor callbacks
> 
> Hi Tim (and Jeff),
> 
> There seems to be a little imperfection somewhere.
> 
> In my record, I try to "monitor" 2 fields: a float and an array of
> floats
> (288 elements).  What I want is to get updates at about 5Hz.  It does
> not work -- missing every the other update but get those lucky ones
> twice -- still getting 5 Hz but half the information.
> 
> I tried to slow down the system to about one update every 3 seconds.
> It still behaves the same way.  However when I commented out the
> db_post_event for the array, the monitoring for the single float works
> correctly.  The problem seems to be related to the array.
> 
> In the Tech-Talk DB, Jeff once replied to someone about buffering
> in Epics (the guy had very similiar problem).  Am I hit by the same
> thing?
> It is hard to imagine that at 0.3 Hz I would run into buffer-full or
> out-
> of-memory problems.  I would imagine that at a slow enough rate,
> it should work with whatever buffering or flowControl.
> 
> Is there a way to re-config the IOC so that it can 'monitor' small
> arrays
> at <= 10 Hz?  My processor has 500 MB memory.
> 
> Thank you very much.  Best regards,
> Dehong
> 
> 
> 
> 
> ----- Original Message -----
> From: Tim Mooney <[email protected]>
> Date: Saturday, August 9, 2008 11:17 am
> Subject: Re: Loosing half the monitor callbacks
> To: Dehong Zhang <[email protected]>
> Cc: [email protected], [email protected]
> 
> 
> > Dehong,
> > I think this shows that the problem is not in channel access, but in
> the
> > database or lower.  You're not losing monitor callbacks, the record 
> is
> > posting the same value twice, with the same time stamp.  You can get
> > another clue to what this means by looking at the record-support code,
> > and finding calls to recGblGetTimeStamp() and calls to
> db_post_events()
> > for the CTME field.
> > 
> > Dehong Zhang wrote:
> > > Hi Friends Kay, Mark and Mohan,
> > > 
> > > Thank you very much for the advices.
> > > 
> > > I just tried camonitor.  It is doing the same thing: throw away 
> > every the other
> > > change, but callback two times for the other ones.  The printout 
> is 
> > like:
> > > 
> > > fastTimeTest.CTME              2008-08-08 16:46:02.609123 
> > 6.88202e+06 
> > > fastTimeTest.CTME              2008-08-08 16:46:02.859123 
> > 7.38478e+06 
> > > fastTimeTest.CTME              2008-08-08 16:46:02.859123 
> > 7.38478e+06 
> > > fastTimeTest.CTME              2008-08-08 16:46:03.259123 
> > 8.01506e+06 
> > > fastTimeTest.CTME              2008-08-08 16:46:03.259123 
> > 8.01506e+06 
> > > fastTimeTest.CTME              2008-08-08 16:46:03.659123 137329 
> > > fastTimeTest.CTME              2008-08-08 16:46:03.659123 137329 
> > > fastTimeTest.CTME              2008-08-08 16:46:04.059123 817524 
> > > fastTimeTest.CTME              2008-08-08 16:46:04.059123 817524 
> > > 
> > > Does the record update time stamps tell anything?  Am I running 
> too 
> > fast?
> > > 
> > > Thank you again.  Best regards,
> > > Dehong
> > > 
> > > 
> > > 
> > > 
> > > 
> > > ----- Original Message -----
> > > From: Mohan Ramanathan <[email protected]>
> > > Date: Friday, August 8, 2008 4:43 pm
> > > Subject: RE: Loosing half the monitor callbacks
> > > To: Dehong Zhang <[email protected]>, [email protected]
> > > 
> > > 
> > >> Hi
> > >> Try to set the TPRO field in the IOC to see that it is indeed 
> > >> processing every time
> > >>
> > >> Mohan
> > >>
> > >> ----------------------------------------------------------------
> > >> Mohan Ramanathan  ([email protected])
> > >> Senior Beamline Engineer, Advanced Photon Source
> > >> Argonne National Laboratory, Argonne, IL 60439
> > >> (630)-252-3773/ (630)-822-5625(Cell)
> > >> ----------------------------------------------------------------
> > >>
> > >> [Message delivered by NotifyLink]
> > >>
> > >> ----------Original Message----------
> > >>
> > >> From: Dehong Zhang <[email protected]>
> > >> Sent: Fri, August 08, 2008 4:30 PM
> > >> To: [email protected]
> > >> Subject: Loosing half the monitor callbacks
> > >>
> > >>
> > >> Hi,
> > >>
> > >> I would like to monitor a PV at 5 Hz.  Somehow I do get 5 callbacks
> 
> > 
> > >> every seconds
> > >> but only get the changes every the other time, like getting changes
> 
> > 
> > >> 1st, 3rd, 5th ...
> > >> two times, but never get changes 2nd, 4th, ...
> > >>
> > >> Could you please enlighten me?
> > >>
> > >> Thanks and best regards,
> > >> Dehong
> > >>
> > 
> > -- 
> > Tim Mooney ([email protected]) (630)252-5417
> > Beamline Controls & Data Acquisition Group
> > Advanced Photon Source, Argonne National Lab.

References:
Re: Loosing half the monitor callbacks Dehong Zhang
RE: Loosing half the monitor callbacks Mark Rivers

Navigate by Date:
Prev: RE: Loosing half the monitor callbacks Mark Rivers
Next: Scan Time Definitions David Dudley
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Loosing half the monitor callbacks Mark Rivers
Next: Scan Time Definitions David Dudley
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·