Jason,

There was a comment in the charts that the replacement policy was broken. Is 
that still the case?

I wanted to assign the students a task to experiment with different replacement 
policies.

Nick

From: Jason Lowe-Power <ja...@lowepower.com>
Sent: Monday, October 28, 2024 11:24 AM
To: The gem5 Users mailing list <gem5-users@gem5.org>
Cc: Beser, Nicholas D. <nick.be...@jhuapl.edu>
Subject: [EXT] Re: [gem5-users] Does GarnetPt2Pt and GarnetMesh still work in 
Gem5?

APL external email warning: Verify sender 
ja...@lowepower.com<mailto:ja...@lowepower.com> before clicking links or 
attachments



Hi Nick,

The generic topologies in Ruby (e.g., the ones in configs/topologies) were 
always *very brittle*. This was especially so for topologies like Mesh where 
the topology is tightly coupled to the number of each type of controller (and 
even the coherence protocol!).

Therefore, in the stdlib we have taken the approach that we will not provide 
generic topologies. Instead, we will provide specific instances of topologies 
paired with a protocol. I.e., we will provide "prebuilt" cache hierarchies. For 
example, the Octopi cache: 
gem5/src/python/gem5/components/cachehierarchies/ruby/caches/prebuilt/octopi_cache/octopi.py
 at stable · gem5/gem5 · 
GitHub<https://github.com/gem5/gem5/blob/stable/src/python/gem5/components/cachehierarchies/ruby/caches/prebuilt/octopi_cache/octopi.py#L58>

To answer your question directly, the correct way to demonstrate garnet pt2pt 
or mesh would be to write your own cache hierarchy. Note that you don't need to 
put it in src/ or recompile gem5. Because it's pure python using the gem5 
libraries you can simply write a python file and use it. If you create a 
`CacheHierarchy` then it will likely be compatible with all of our boards 
including both the test board (used with traffic generators) and all of the 
ISAs.

Cheers,
Jason

On Sat, Oct 26, 2024 at 1:01 PM Beser, Nicholas D. via gem5-users 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>> wrote:
I have been looking over the example of Garnet in the 2024 bootcamp. The 
Ring-garnet does work as advertised. I was wondering if GarnetPt2Pt and 
GarnetMesh still works. The example from the older 2022 bootcamp used 
NULL/gem5.opt, but while the code is still in the materials/archive, the 
commands don’t seem to work. The examples in 2024 seem to use ALL_CHI/gem5.opt 
and not NULL.

What is the right way to demonstrate Garnet Pt2Pt and Garnet_mesh?

Nick
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org<mailto:gem5-users@gem5.org>
To unsubscribe send an email to 
gem5-users-le...@gem5.org<mailto: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