Matt,

Thank you for your comments and link. I think we use a similar approach to 
teaching advanced computer architecture. Can you tell me how you have your 
students running gem5? Do you supply them with a VM system or use github 
codespace? I took the approach of supplying my class with jetson orin nano 
processors which was able to run gem5 but was hampered by having only 6 cores, 
and did not run the gpu emulation. Almost all of the students had access to 
their own x86 processors and were able run some form of linux. I also used the 
jetson orin nano to teach the class about Nvidia GPU programming.

The class did have issues with docker not behaving in a uniform fashion. When I 
setup the class initially I liked the bootcamp 2022 approach with docker. 
However when I upgraded to 2024, it seemed to be more a patchwork than seamless 
interface.

I have had a lot of trouble trying to get github to respond to my request to 
try to setup codespace for my class. I am hoping to get something better in 
place before I offer the class again.

Nick

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

APL external email warning: Verify sender 
mattdsinclair.w...@gmail.com<mailto:mattdsinclair.w...@gmail.com> before 
clicking links or attachments



Hi Nicholas,

+1 to what Jason said.  I just assigned the students in my class an assignment 
using many of the different replacement policies and none reported problems: 
https://pages.cs.wisc.edu/~sinclair/courses/cs752/fall2024/handouts/cs752-fall2024-hw5.pdf

My guess is you are thinking of my student's prior presentation on various bug 
fixes we made for the replacement policies (among other things): 
https://www.gem5.org/assets/files/workshop-isca-2023/slides/analyzing-the-benefits-of-more-complex-cache.pdf,
 unless there is something else I'm not aware of ...

Matt

On Mon, Oct 28, 2024 at 11:31 AM Jason Lowe-Power via gem5-users 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>> wrote:

Replacement policies should be fully supported.

On Mon, Oct 28, 2024, 8:44 AM Beser, Nicholas D. 
<nick.be...@jhuapl.edu<mailto:nick.be...@jhuapl.edu>> wrote:
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<mailto:ja...@lowepower.com>>
Sent: Monday, October 28, 2024 11:24 AM
To: The gem5 Users mailing list 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Cc: Beser, Nicholas D. <nick.be...@jhuapl.edu<mailto: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<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