gem5-users@gem5.org

The gem5 Users mailing list

View all threads

Multi-core control and make sure the last core completes

洪柏勝
Wed, Aug 9, 2023 9:09 AM

Hi,
I'm building an environment that can restore multicore simpoint in se mode.
Currently facing a challenge is when I run multi-core, as soon as one of
the cores is done the system ends up running.
So I would like to ask what method the native gem5 uses to ensure and
control the system until the last core is completed.
If possible, please provide the file name and function name for me.

Best regards
Bryson Hong

Hi, I'm building an environment that can restore multicore simpoint in se mode. Currently facing a challenge is when I run multi-core, as soon as one of the cores is done the system ends up running. So I would like to ask what method the native gem5 uses to ensure and control the system until the last core is completed. If possible, please provide the file name and function name for me. Best regards Bryson Hong
ZQ
Zhantong Qiu
Sat, Aug 12, 2023 12:47 AM

Hi Bryson,

I have two questions about the environment:

  1. How were the multicore SimPoints created? Were they created in gem5 with
    the SimPoint profiler? (
    https://github.com/gem5/gem5/blob/stable/src/cpu/simple/probes/SimPoint.py#L40
    )
  2. What does it mean by "as soon as one of the cores is done the system
    ends up running"? Does it mean as soon as one core reaches the interval
    length, the simulation raises an exit event?

If the environment is created to restore SimPoints for multithreaded
applications. IIRC, there isn't an instruction-count-based termination
event for multicore in gem5 because those events require to be scheduled
ahead at the start for each core separately(e.g.
https://github.com/gem5/gem5/blob/stable/src/cpu/base.cc#L742). The
solution might be making a global instruction tracker with probe listener
objects to raise an exit event when the sum of all cores'
executed/committed instructions reach the interval length.

I hope this helps.

Best,
Zhantong

On Wed, Aug 9, 2023 at 2:12 AM 洪柏勝 via gem5-users gem5-users@gem5.org
wrote:

Hi,
I'm building an environment that can restore multicore simpoint in se mode.
Currently facing a challenge is when I run multi-core, as soon as one of
the cores is done the system ends up running.
So I would like to ask what method the native gem5 uses to ensure and
control the system until the last core is completed.
If possible, please provide the file name and function name for me.

Best regards
Bryson Hong


gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-leave@gem5.org

Hi Bryson, I have two questions about the environment: 1) How were the multicore SimPoints created? Were they created in gem5 with the SimPoint profiler? ( https://github.com/gem5/gem5/blob/stable/src/cpu/simple/probes/SimPoint.py#L40 ) 2) What does it mean by "as soon as one of the cores is done the system ends up running"? Does it mean as soon as one core reaches the interval length, the simulation raises an exit event? If the environment is created to restore SimPoints for multithreaded applications. IIRC, there isn't an instruction-count-based termination event for multicore in gem5 because those events require to be scheduled ahead at the start for each core separately(e.g. https://github.com/gem5/gem5/blob/stable/src/cpu/base.cc#L742). The solution might be making a global instruction tracker with probe listener objects to raise an exit event when the sum of all cores' executed/committed instructions reach the interval length. I hope this helps. Best, Zhantong On Wed, Aug 9, 2023 at 2:12 AM 洪柏勝 via gem5-users <gem5-users@gem5.org> wrote: > Hi, > I'm building an environment that can restore multicore simpoint in se mode. > Currently facing a challenge is when I run multi-core, as soon as one of > the cores is done the system ends up running. > So I would like to ask what method the native gem5 uses to ensure and > control the system until the last core is completed. > If possible, please provide the file name and function name for me. > > Best regards > Bryson Hong > _______________________________________________ > gem5-users mailing list -- gem5-users@gem5.org > To unsubscribe send an email to gem5-users-leave@gem5.org >