Also note that variable accesses that might appear to be atomic on single
processor architectures might need mutex locking on SMP systems. A person
maintaining a multi-threaded code should read up on the additional
synchronization constraints imposed by SMP architectures (and their cache
coherency issues). I expect that increasing ubiquity of SMP based
motherboards will be a trend.
Jeff
> -----Original Message-----
> From: Andrew Johnson [mailto:[email protected]]
> Sent: Thursday, June 22, 2006 9:21 AM
> To: Laznovsky, Michael
> Cc: EPICS core-talk
> Subject: Re: seq debugger
>
> Hi Michael,
>
> Laznovsky, Michael wrote:
> >
> > Since the snc compiler doesn't currently generate any code to protect
> > any part of the "action" functions (the body of each "when"), perhaps
> > the easiest way to go would be to add semaphores around those (only if
> > compiled for debug, to avoid the overhead otherwise). Any other ideas?
>
> I don't know enough about the internal workings of the sequencer to
> provide specifics, but I wonder if there is currently any protection
> between a sequence action running and a CA event callback updating its
> monitored variable. This would need exactly the same protection that
> we're talking about for the local variable access API, so you might want
> to investigate how that is done (if at all). Of course the problem here
> is that single SNL program may have multiple state sets, and if you add
> a mutex the tasks for each state set could end fighting for access to
> the same (set of) variable(s).
>
> - Andrew
> --
> Not everything that can be counted counts,
> and not everything that counts can be counted.
> -- Albert Einstein
- References:
- Re: seq debugger Andrew Johnson
- Navigate by Date:
- Prev:
Re: seq debugger Andrew Johnson
- Next:
RE: alarm hook Jeff Hill
- Index:
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: seq debugger Andrew Johnson
- Next:
epics regression tests on AMD64 running RHEL Linux 4.0 Ernest L. Williams Jr.
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|