EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  <19992000  2001  2002  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  <19992000  2001  2002  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: Re: database race condition?
From: Till Straumann <[email protected]>
To: Marty Kraimer <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Tue, 23 Mar 1999 15:37:35 +0100
Marty Kraimer wrote:

> If each get/put is locked in addition to locking the lock set then database
> access must also lock each get/put. On an mv167 it taks about 50 microseconds to
> process a soft ai records which fetches a value from another record via a
> DB_LINK. It takes several microseconds (I cant remember the number but I think
> it was something like 5) to do a semTake,semGive. Thus it is a significent cpu
> overhead to lock each get/put.
>

I completely agree. That's why I suggested to just disable interrupts while copying
small multiple word data types (such as scalar doubles). This should be quite
efficient
and not affecting interrupt latency very much.
AFAIK, this could be done at a small number of places, namely in the
putXXXDouble routines.

Regarding string fields, it's probably the easiest  to drop the NPP NMS exception for
such fields.

The `pointer alternative' i.e. adding an extra level of indirection to database links
and atomically switching a pointer before and after copying fields of more complex
data in order to always refer to valid data, would probably imply major changes.
The overhead however would not be outragous (one extra pointer deref)
- considering the fact that in many  cases the `old' or `last' value of a field is
already buffered.

Well, I don't want to get on your nerves too much with this issue ;-) As I said, I
have no
problem with the current behavior - I was just wondering.

Best regards

Till Straumann.


Replies:
Re: database race condition? Andrew Johnson
References:
database race condition? Till Straumann
Re: database race condition? Marty Kraimer
Re: database race condition? Till Straumann
Re: database race condition? Marty Kraimer
Re: database race condition? Till Straumann
Re: database race condition? Marty Kraimer

Navigate by Date:
Prev: Time Stamping Natalie Otey
Next: Re: Time Stamping Ned Arnold
Index: 1994  1995  1996  1997  1998  <19992000  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: database race condition? Marty Kraimer
Next: Re: database race condition? Andrew Johnson
Index: 1994  1995  1996  1997  1998  <19992000  2001  2002  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 ·