EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: Re: Is it possible to have deterministic SoftIOC (R3.14.12) on Linux
From: "Steven M. Hartman" <[email protected]>
To: Jimmy Johnson <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Thu, 20 Jan 2011 09:47:36 -0500
Jimmy Johnson wrote:

I am planning on using a SoftIOC (R3.14.12) on Linux and will want to run a control loop (about 1000 lines of C code spread across a few custom records) deterministically at 100Hz. There will not be any other user applications, in addition to the IOC, running on the box.

How stringent is your "deterministically at 100Hz" requirement? EPICS itself shouldn't be an impediment, but the operating system's real time capabilities will be. I would not expect a non-realtime OS to do particularly well, though. A quick test on a lightly loaded desktop machine with a 2.6.18 kernel gives . . .

My100HzTest                    2011-01-20 09:20:36.881690 10
My100HzTest                    2011-01-20 09:20:36.892685 10.01
My100HzTest                    2011-01-20 09:20:36.903834 10.02
My100HzTest                    2011-01-20 09:20:36.914830 10.03
My100HzTest                    2011-01-20 09:20:36.925973 10.04
My100HzTest                    2011-01-20 09:20:36.937975 10.05
My100HzTest                    2011-01-20 09:20:36.950138 10.06
My100HzTest                    2011-01-20 09:20:36.962171 10.07
My100HzTest                    2011-01-20 09:20:36.974273 10.08
My100HzTest                    2011-01-20 09:20:36.986281 10.09
My100HzTest                    2011-01-20 09:20:36.997378 10.1
 . . .
My100HzTest                    2011-01-20 09:20:38.013803 11
My100HzTest                    2011-01-20 09:20:38.024939 11.01
 . . .

(a calc record incrementing by 0.01, with a custom SCAN of 0.01 seconds)

will show you that each iteration is going to happen slightly later then ideal, in this case loosing 0.13 seconds over 100 iterations.

For a realtime OS like VxWorks, 100 Hz should be easy as long as your processing can complete within that 0.01 second window (dependent on your processor and your code and task priorities). I don't have any experience with realtime extensions to Linux so don't know how well that will perform, but if you are interested in using Linux, I would start with that.

--
Steven Hartman
[email protected]

References:
Is it possible to have deterministic SoftIOC (R3.14.12) on Linux Jimmy Johnson

Navigate by Date:
Prev: Re: Loading EPICS/RTEMS Apps from local filesystem on VME board Daron Chabot
Next: Re: Is it possible to have deterministic SoftIOC (R3.14.12) on Linux David Kline
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Is it possible to have deterministic SoftIOC (R3.14.12) on Linux Jimmy Johnson
Next: Re: Is it possible to have deterministic SoftIOC (R3.14.12) on Linux David Kline
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·