EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: channel access
From: john sinclair <[email protected]>
To: tech talk <[email protected]>
Date: Mon, 19 Nov 2001 13:24:45 -0500 (EST)
In the course of testing edm, I have noticed the following behavior for
some configurations (unfortunately, I don't mean anything precise when I
say "some configurations"):

  I run a fresh copy of edm, bring up a display containing ~9000
  references to the same pv  and execute it. This adds ~9000 events to the
  ioc (or portable CAS). Performance is good.

  I now deactivate the display which clears all the events.

  From this point on, when this or any other display is executed, the
  performance is such that it takes twice as long to complete the
  process of adding all the events.



At this point the code looked something like the following:

====================================

  for all pvs {

    add events

  }

  ca_pend_io( time )

====================================



So, I changed this to

====================================

  count=0
  for all pvs {

    add events
    if ( ++count > someNumber ) {
      ca_pend_io( time )
      count=0
    }

  }

  ca_pend_io( time ) 

====================================



This did not help at all. Then I change to code to

====================================

  count=0
  for all pvs {

    add events           
    if ( ++count > someNumber ) {
      ca_pend_io( time )
      ca_pend_event( small-time )
      count=0
    }
 
  }

  ca_pend_io( time )
  ca_pend_event( small-time )

====================================



This made an amazing difference and now the performance is good all the
time.

Is this behavior reasonable? Does pend event do something fundamentally
different from pend io?


John Sinclair
[email protected]
Oak Ridge National Lab
865-576-6362   865-574-1268 (fax)



Replies:
RE: channel access Jeff Hill

Navigate by Date:
Prev: Fwd: RE: PowerPC woes Dale L. Brewe
Next: RE: bad UDP messages Jeff Hill
Index: 1994  1995  1996  1997  1998  1999  2000  <20012002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Fwd: RE: PowerPC woes David H. Thompson
Next: RE: channel access Jeff Hill
Index: 1994  1995  1996  1997  1998  1999  2000  <20012002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·