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  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024  2025  2026  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  <20232024  2025  2026 
<== Date ==> <== Thread ==>

Subject: Re: Re: Questions related to mcoreutil
From: 김대영 via Tech-talk <[email protected]>
To: Ralph Lange <[email protected]>, [email protected]
Date: Wed, 22 Feb 2023 08:58:25 +0900 (KST)

 

Dear Ralph Lange


Thank you for your help every time.

As a result of confirmation, Thread is created and executed before mcoreutil is executed as follows.


 

Q1) How can mcoreutil run faster?
   I tried to give sleep before creating a thread.
    And I changed the position of XXX_LIBS += mcoreutils in the make file.
   The generated Thread is generated from Main.cpp, unlike other threads, as shown in the figure below.
 
Thank you and Best Regards

--- Original Message ---
From : "Ralph Lange"<[email protected]>
To : "김대영"<[email protected]>, [email protected]
Date : 2023/02/21 화요일 오후 6:11:32
Subject : Re: Questions related to mcoreutil

Hi Daeyoung,

On Tue, 21 Feb 2023 at 09:13, 김대영 via Tech-talk < [email protected]> wrote:

 

I wrote and uploaded the file of /etc/rtrules as follows.

The results are as follows. However, some of them, such as Thread_ExchangeData and CAC_UDP, were not CPU-assigned.

 


Obviously, some of the rules are applied, which means the rule mechanism is reading the file and generally working. You can check if all rules have been read correctly with the command ' mcoreThreadRulesShow' in the IOC shell.

The rules work through a hook in the mechanism behind ' epicsThreadCreate()', the EPICS Base call to create threads. Any threads that already have been created before MCoreUtils adds itself to the hook will obviously not be affected.
Looking at the 'EPICS ID' values of the un-assigned threads, which - except for those with stack addresses - are all starting with '0x1f...' while the threads with working assignments all start with '0x20...' I think the installation of the rules might be happening too late in the IOC startup.

There should be a line of log printout on the IOC console:
MCoreUtils: Read <n> thread rule(s) from <file>
Do you see that line? When is it printed?

Cheers,
~Ralph

 

 

 

 


Replies:
Re: Re: Questions related to mcoreutil Ralph Lange via Tech-talk
References:
Re: Questions related to mcoreutil Ralph Lange via Tech-talk

Navigate by Date:
Prev: Re: Questions related to mcoreutil Ralph Lange via Tech-talk
Next: measComp R4-1 available Mark Rivers via Tech-talk
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  <20232024  2025  2026 
Navigate by Thread:
Prev: Re: Questions related to mcoreutil Ralph Lange via Tech-talk
Next: Re: Re: Questions related to mcoreutil Ralph Lange via Tech-talk
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  <20232024  2025  2026 
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·