Hi Srikant,

Thank you so much for answering my questions and providing the reference
file.

Since I am new to NoC simulation and using Garnet 3.0 (HeteroGarnet), I
feel a little lost regarding running a SE or FS mode simulation.

I checked the documentation on Gem5 posted (
https://www.gem5.org/documentation/general_docs/ruby/heterogarnet/) and
read the Kite paper (https://dl.acm.org/doi/abs/10.5555/3437539.3437683).

Nevertheless I could not figure out how to run a simulation (specifically
in SE mode) where I can use the topology you provided.

I am using the deprecated se.py file in the following manner:
build/X86/gem5.opt configs/deprecated/example/se.py --num-cpus=4
--num-dirs=4 --cpu-type=DerivO3CPU --cpu-clock=2.5GHz --caches
--l1d_size=64kB --l1d_assoc=8 --l1i_size=32kB --l1i_assoc=8
--mem-type=SimpleMemory --mem-size=8GB --ruby --network=garnet
--topology=KiteLarge_EWMC --mesh-rows=2 --cmd=</path/to/binary>
--options="<binary args>"

When I run this command, I get the following message:
=======================================================================
gem5 Simulator System.  https://www.gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 version 23.1.0.0
gem5 compiled Feb 19 2024 14:33:34
gem5 started Feb 22 2024 14:48:41
command line: build/X86/gem5.opt configs/deprecated/example/se.py
--num-cpus=4 --num-dirs=4 --cpu-type=DerivO3CPU --cpu-clock=2.5GHz --caches
--l1d_size=64kB --l1d_assoc=8 --l1i_size=32kB --l1i_assoc=8
--mem-type=SimpleMemory --mem-size=8GB --ruby --network=garnet
--topology=KiteLarge_EWMC --mesh-rows=2 --cmd=</path/to/binary>
'--options=<binary args>'

warn: The se.py script is deprecated. It will be removed in future releases
of  gem5.
TypeError: makeTopology() missing 1 required positional argument: 'Router'

At:
  gem5/configs/ruby/Ruby.py(262): create_system
  configs/deprecated/example/se.py(268): <module>
  src/python/m5/main.py(669): main
========================================================================

I understand that the se.py file may not be equipped to run a HeteroGarnet
simulation, but I could not find any other simulation files that would help
me.

I would really appreciate it if you could help me find a simulation file
along with any modifications needed to Gem5 to support a simulation with
the Kite Large topology.

Thank you again for your help.

Sincerely,
Preet.


On Wed, Feb 21, 2024 at 8:08 PM Srikant Bharadwaj <srikan...@gmail.com>
wrote:

> Hi Preet,
> 1. I am attaching a config file for Kite Large topology that you can use
> as a reference for building chiplet-based topologies. More info on Kite
> Large can be found in this paper:
> https://dl.acm.org/doi/abs/10.5555/3437539.3437683
> 2. HeteroGarnet only handles the network traffic. So HeteroGarnet is can
> handle any thread pinning that happens on the core levels as long as the
> cores are connected to each other using a topology and Heterogarnet is
> enabled.
> 3. Yes, you can perform SE mode simulations as well as Garnet standalone
> simulations with HeteroGarnet. Let me know if you have any questions.
>
> Thanks,
> Srikant
>
>
>
> On Wed, Feb 21, 2024 at 1:55 PM Preet Derasari via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Dear Dr. Krishna,
>>
>> Thank you so much for your response.
>>
>> I read the documentation you linked to in your email and have a few
>> questions.
>> 1. Are there any example config files that you are aware of that can help
>> me start with chiplet simulation (with some basic routing techniques and
>> topologies)? If so, could you point me to them?
>> 2. How does HeteroGarnet assign processing and other nodes to an
>> application? Can I use methods like CPUSET() in C++ to assign a simulated
>> core (node) to a thread (created using thread)?
>> 3. Can I perform SE mode simulations of my applications, or is
>> HeteroGarnet only applicable to FS (or the new gem5 v22 "boards")?
>>
>> I really appreciate your help.
>>
>> Thank you. Sincerely,
>> Preet.
>>
>>
>> On Wed, Feb 21, 2024 at 11:24 AM Krishna, Tushar <tus...@ece.gatech.edu>
>> wrote:
>>
>>> The latest version of garnet in the gem5 repo allows you to model
>>> multi-chiplet NoCs. *[The gem5_chips repo is deprecated - and was
>>> actually forked off an earlier version of HeteroGarnet].*
>>> Here is its documentation on the gem5 wiki:
>>> https://www.gem5.org/documentation/general_docs/ruby/heterogarnet/
>>>
>>> Best,
>>> Tushar
>>> On Feb 21, 2024 at 11:17 AM -0500, Preet Derasari via gem5-users <
>>> gem5-users@gem5.org>, wrote:
>>>
>>> Hi,
>>>
>>> Does anyone know how to do a chiplet based simulation on the latest Gem5
>>> version with garnet?
>>>
>>> My basic requirements are: running distributed C++ applications (using
>>> multi-threading) on the Gem5 O3CPYU type, having the ability to control the
>>> number of cores on individual chiplet dies (even one core per die is
>>> sufficient), control the D-to-D bandwidth, and getting various statistics
>>> including power consumption per die and in the interposer, overall latency
>>> of communication between dies.
>>>
>>> On the other hand these are optional: configuring a package with
>>> different topologies (mesh XY, butterfly, etc), possibly different
>>> packaging techniques (like 2D, 2.5D, 3D), simulate heterogenous components
>>> like GPU with CPU, and other NoC parameters like flit with, interposer
>>> width, etc.
>>>
>>> I tried an older version of Gem5 from Dr. Tushar Krishna's group called
>>> gem5_chips (https://github.com/GT-CHIPS/gem5_chips) but I had to use an
>>> older version of Python (2.7) and GCC (8) to even compile Gem5 on an Ubuntu
>>> 20.04 system. Despite that I was not able to run their benchmark beyond a
>>> certain instruction limit (using max-insts) since the simulator started
>>> throwing assertion errors in the garnet2.0/OutVcState.cc code.
>>>
>>> I would really appreciate it if someone can point me towards the right
>>> direction here.
>>>
>>> Thank you. Best regards,
>>> Preet.
>>>
>>> _______________________________________________
>> 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