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
<2001>
2002
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
<2001>
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|