I have started testing the portable channel access server on linux.
Red Hat Linux 5.0 (patches are current)
Epics 3.13 beta 11
program 1: CAS with 500 pv's
program 2: simulated I/O scanner with approx 1000 puts per second
program 3: medm
One display: 3 bar monitors, 6 text monitors, 1 meter
program 4: Dummy event receiver
500 events added
======================================================================
event handler: (procedure is ridiculous; objective is to produce activity)
static int count = 0;
count++
remove buffer from free queue
copy count to buffer
insert buffer into active queue
if there is only one node on active queue then signal event thread
======================================================================
event thread:
lock thread preemption
get chid for "num_events" as id
unlock thread preemption
while ( 1 ) {
while ( active queue is not empty ) {
remove buffer from active queue
value = count field of buffer
lock thread preemption
ca_put( DBR_LONG, id, &value );
unlock thread preemption
insert buffer into free queue
}
wait for signal
}
======================================================================
main thread:
get all chids and add events
create event thread
while ( 1 ) {
lock thread preemption
ca_pend_io( 5.0 );
ca_pend_event( 0.001 );
unlock thread preemption
delay 100 ms
}
======================================================================
Everything has gone well for about 72 hours except for Medm. Medm runs
fine and then, at some (apparently) random time, begins consuming virtual
memory at a rate of about 1K bytes per second until all is consumed. There
is no noticeable change in behavior or performance when Medm gets into this
state (until the system starts swapping).
I realize that the problem could be in the linux kernel, X libs, or C libs. I
will try to build the test on another platform. Any comments/suggestions
are appreciated.
John Sinclair
[email protected]
Oak Ridge National Lab
423-576-6362 423-574-1268 (fax)
- Navigate by Date:
- Prev:
Color rules john sinclair
- Next:
Marty Kraimers UC Distinguished Performance Award Bill McDowell
- 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:
Color rules john sinclair
- Next:
Re: Portable channel access server on linux Garrett D. Rinehart
- 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
|