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  2011  <20122013  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  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Utilities for EPICS on Multi-Core Linux
From: "Shen, Guobao" <[email protected]>
To: [email protected]
Date: Tue, 11 Dec 2012 14:21:41 -0500
Hi Ralph,
After a short try, there are 2 compile problems on my Mac.
1. the Mac version of cp command does not support "-T" flag. Either I have to change it to use GNU cp, or remove T.
2. It compiles and install documentation only. No library is produced by default.

Guobao


On 12/10/12 4:21 AM, Ralph Lange wrote:
Hi Jack,

On 09.12.2012 15:59, Jack Smith wrote:
On Fri, Nov 23, 2012 at 2:48 PM, Ralph Lange <[email protected]> wrote:
MCoreUtils - Utilities for EPICS on Multi-Core Linux

I recently started working on a collection of useful stuff for running IOCs
on multi-core (RT or not) Linux architectures. (*)

The first two modules are now available on SourceForge [1]:

Real-time threadShow routines
Enhanced threadShow functions that print LWP ID, scheduling policy, and CPU
affinity.

Rule-based setting of real-time properties
Pattern matching engine that allows to set real-time properties of EPICS
threads (scheduling policy, priority, and CPU affinity) by regular
expression matching on thread names. Rules can be set in a config file or
from the iocShell, and will be applied to any thread started through the
libCom/OSI API of EPICS Base. This allows to restrict the complete IOC onto
a subset of CPUs, dedicate CPUs to specific (driver) threads, fine-tune
policies and priorities, etc.

MCoreUtils need EPICS Base 3.15.0.1 or later, on a Linux platform.

This project is in an early stage.
I know that more and more EPICS sites are using this family of platforms and
have to cope with similar things, so I would like to invite everybody to
step forward with ideas and suggestions (and code!). I hope we can manage to
minimize parallel developments, and combine efforts for a better real-time
behaviour and performance of EPICS.

Cheers,
~Ralph

I guess the purpose of MCoreUtils is to make Linux system (RT or not)
more deterministic. Right?
Correct.
ITER's fast controllers run a RT-Linux (RHEL-based MRG-R), but the
general direction is a) to get more over-all deterministic behavior, and
b) to allow to run specific RT applications on dedicated cores, i.e.
restrict the IOC to a subset of the available cores.

For EPICS base 3.14.x, how do the IOCs' threads use the CPU resources
on a multi-core Linux system? Do the threads just randomly pick up any
available CPU resource?
Basically, yes.
The default for EPICS Base is to not use Posix real-time scheduling, so
all EPICS IOC threads are using the Linux default scheduler, which will
distribute them onto available CPU resources according to its
implemented strategy. Which of course - strictly speaking - is not
randomly, but looks a lot like it... ;-)

There's a good page on the EPICS Wiki by Till Straumann [1], describing
how to switch an IOC to use Posix real-time scheduling under Linux.

Cheers,
~Ralph

[1]
https://wiki-ext.aps.anl.gov/epics/index.php/How_To_Use_Posix_Thread_Priority_Scheduling_under_Linux




Replies:
Re: Utilities for EPICS on Multi-Core Linux Ralph Lange
References:
Utilities for EPICS on Multi-Core Linux Ralph Lange
Re: Utilities for EPICS on Multi-Core Linux Jack Smith
Re: Utilities for EPICS on Multi-Core Linux Ralph Lange

Navigate by Date:
Prev: RE: Passive Scanning processing Dalesio, Leo
Next: Re: Utilities for EPICS on Multi-Core Linux Ralph Lange
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Utilities for EPICS on Multi-Core Linux Ralph Lange
Next: Re: Utilities for EPICS on Multi-Core Linux Ralph Lange
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  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 ·