Hi Sebastian,

I am not aware of an existing example which does what are you looking for.
But, I think the best way to achieve this will be annotating your workloads
using m5 ops (you might have to add special m5 ops to recognize what
workload finished) to move control from the simulated system to your run
script if you want to analyze the state of the simulated system or change
something about it (there are limitations to what you can change though).

If you do not want to change the simulated system or want to analyze the
state of the simulated system, maybe the best option is to do everything
inside the simulated system (as you would typically run similar workloads
on a real machine with Linux OS on it). Basically, you can add any scripts
in your disk image to do what you are looking for.

As far as annotating the workloads is concerned, I think the following
references might be useful:

https://www.youtube.com/watch?v=0Gxuc8lel3Y
https://www.gem5.org/documentation/general_docs/m5ops/

-Ayaz

On Sun, Mar 5, 2023 at 11:49 PM Sebastian Weber <sebastian.we...@fzi.de>
wrote:

> Hi Ayaz,
>
>
>
> do you know any examples or specific parts of the source code that I
> should look at? Do you have any hints or tips how I can implement my use
> case?
>
>
>
> Thank you in advance,
>
> Sebastian
>
>
>
> *Von:* Sebastian Weber via gem5-users <gem5-users@gem5.org>
> *Gesendet:* Montag, 20. Februar 2023 11:27
> *An:* Ayaz Akram <yazak...@ucdavis.edu>
> *Cc:* The gem5 Users mailing list <gem5-users@gem5.org>; Sebastian Weber <
> sebastian.we...@fzi.de>
> *Betreff:* [gem5-users] Re: Interactive simulation with statistics per
> executable
>
>
>
> Hi Ayaz,
>
>
>
> yes, my goal is to analyze the execution of multiple independent workloads
> on a single hardware platform. Additionally, I need to be able to either
> adapt these workloads or add new workloads during the simulation, because
> the execution (results) of a workloads can influence when other workloads
> should be simulated.
>
>
>
> Best regards,
>
> Sebastian
>
>
>
> *Von:* Ayaz Akram <yazak...@ucdavis.edu>
> *Gesendet:* Donnerstag, 16. Februar 2023 11:12
> *An:* Sebastian Weber <sebastian.we...@fzi.de>
> *Cc:* The gem5 Users mailing list <gem5-users@gem5.org>
> *Betreff:* Re: [gem5-users] Re: Interactive simulation with statistics
> per executable
>
>
>
> Hi Sebastian,
>
>
>
> I don't think you can collect per-binary statistics (at least without
> changes in gem5 and potentially the guest OS) while simulating them
> simultaneously in a full-system simulation. Also, I am assuming you want to
> study the interaction of multiple workloads, and that's why you do not want
> to run multiple independent simulations (gem5 processes). Please, let me
> know if that is not your use case.
>
>
>
> -Ayaz
>
>
>
> On Tue, Feb 14, 2023 at 11:45 PM Sebastian Weber <sebastian.we...@fzi.de>
> wrote:
>
> Hi Ayaz,
>
>
>
> is it possible to use gem5 in the way described in my previous mail? I
> need to be able to dynamically add binaries to the current workload of gem5
> while other binaries are still running and to get statistics specific for
> single binaries, despite multiple binaries being executed simultaneously.
>
>
>
> Best regards,
>
> Sebastian
>
>
>
> *Von:* Sebastian Weber via gem5-users <gem5-users@gem5.org>
> *Gesendet:* Donnerstag, 2. Februar 2023 14:51
> *An:* Ayaz Akram <yazak...@ucdavis.edu>; The gem5 Users mailing list <
> gem5-users@gem5.org>
> *Cc:* Sebastian Weber <sebastian.we...@fzi.de>
> *Betreff:* [gem5-users] Re: Interactive simulation with statistics per
> executable
>
>
>
> Hi Ayaz,
>
>
>
> thank you for your quick response. My goal is to be able to initiate the
> execution of a binary in a FS simulation independently of currently running
> binaries, so I can’t use exit events. Keeping the control in the python
> script should be possible by only simulating a certain amount of cycles
> each step and managing the simulation between these steps, but I can’t
> change the workload from the python script without having to start another
> simulation. A predefined workload (board.set_kernel_disk_workload(…))
> won’t work therefore.
>
>
>
> Best regards,
>
> Sebastian
>
>
>
> *Von:* Ayaz Akram <yazak...@ucdavis.edu>
> *Gesendet:* Montag, 30. Januar 2023 23:17
> *An:* The gem5 Users mailing list <gem5-users@gem5.org>
> *Cc:* Sebastian Weber <sebastian.we...@fzi.de>
> *Betreff:* Re: [gem5-users] Interactive simulation with statistics per
> executable
>
>
>
> Hi Sebastian,
>
>
>
> I use [2] as starting point but I can’t change workloads in the python
> script and rerun the simulation because this would simulate another system
> instead of simulating another executable in the same system.
>
>
>
> Going to python script should not simulate another system, rather once you
> go back to the simulation loop your simulation will resume from the point
> where it stopped.
>
>
>
> One way of what you are trying to achieve is to execute m5 utility (with
> the exit input for example, more on m5:
> https://www.gem5.org/documentation/general_docs/m5ops/) in the guest
> whenever one benchmark has finished. This will take stop the simulation and
> take the control to the python script where you can dump the stats
> (m5.stats.dump()), and then resume the simulation to execute the next
> benchmark. I will suggest taking a look at the following example script:
>
>
>
>
> https://github.com/gem5/gem5/blob/stable/configs/example/gem5_library/x86-spec-cpu2006-benchmarks.py
>
>
>
> -Ayaz
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> On Mon, Jan 30, 2023 at 12:46 AM Sebastian Weber via gem5-users <
> gem5-users@gem5.org> wrote:
>
> Hello,
>
>
>
> I am trying to use the current version of gem5 in full system mode
> interactively (--interactive) to be able to dump or reset statistics
> while connecting to the simulated console with m5term [1] (--listener-mode)
> to trigger the execution of executables. The goal is using gem5 in a
> co-simulation and being able to execute (multiple) binaries at arbitrary
> points in time during the simulation and getting binary-specific statistics
> after their execution. I use [2] as starting point but I can’t change
> workloads in the python script and rerun the simulation because this would
> simulate another system instead of simulating another executable in the
> same system. At the moment I am not able to trigger the execution of
> binaries with m5term and getting the statistics with the interactive mode,
> instead I always get empty statistics. My question is whether this setup of
> gem5 and m5term is able to generate statistics and if so, how to get them?
>
>
>
> Best regards,
>
> Sebastian Weber
>
>
>
> [1] https://www.gem5.org/documentation/general_docs/fullsystem/m5term
>
> [2]
> https://github.com/gem5/gem5/blob/stable/configs/example/gem5_library/x86-ubuntu-run-with-kvm.py
>
>
>
>
>
> _______________________________________________
> gem5-users mailing list -- gem5-users@gem5.org
> To unsubscribe send an email to gem5-users-le...@gem5.org
>
>
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to