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  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 
<== Date ==> <== Thread ==>

Subject: Re: Re: Questions related to mcoreutil
From: 김대영 via Tech-talk <tech-talk at aps.anl.gov>
To: Ralph Lange <ralph.lange at gmx.de>, tech-talk at aps.anl.gov
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"<ralph.lange at gmx.de>
To : "김대영"<dykim1114 at dawonsys.com>, tech-talk at aps.anl.gov
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 < tech-talk at aps.anl.gov> 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 
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 
ANJ, 22 Feb 2023 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·