Currently, completed up to partway through 03-Developing-gem5-models/04-ports.md.
I also took notes on where the slides may need to be edited to be more clear without a presenter. They are included below. I may update them if I notice anything else during the typo pass.
Notes on what needs to be added to slides so they are usable to an online audience that hasn't watched/attended the bootcamp
General note
Generally, I think it will be difficult for people who worked on the slides
to catch everything that people looking at the slides for the first time
might be confused about.
Maybe we could add a message like "Feel free to discuss/ask questions in ___ location
if you're confused and have questions" and update the slides if any questions are received
Will the gem5 organization continue paying for codespace usage for new users, or will they have to pay it themselves?
If people following along will pay for their own codespace usage, we should update
the instructons
Also add instructions for setting up the repo on local
Every place where there is a gem5 alias (gem5, gem5-mesi, etc) we should add in
instructions on how to run gem5 locally without the alias. This will make the reference materials more useful in the long term.
01/01-introduction-to-bootcamp
not important: slides 9 and 10 could use more context
(slide 9 - a long list of contributors to the latest gem5 paper, slide 10 - subtitles to diagrams)
slide 12 - code of conduct - add link or put a more descriptive sentence here
slide 29: add text description of software architectures
add conclusion
01/02-getting-started
Will people still be able to use codespaces for the tutorial repo, but "pay" for the usage themselves?
Remove instrs on joining the github classroom?
add instrs on getting tutorial repo locally?
It looks like the aliases (gem5, gem5-mesi, etc) don' twork outside of codespaces - include commands for running gem5 locally.
Tell people what VS Code extentions to add if they are running locally?
01/03-python-background
6: the text at the end says not to use dashes in Python names, but a number of the Python scripts in the materials use dashes. Add disclaimer like on slide 28?
02/01-stdlib
slide 14: gem5-mesi alias
slide 19: add instrs on how to build gem5 with different Ruby protocols (or link to another place)
34: seems to be some missing code after the first two sentences
Slides 32-39: Add more comments in template for where code blocks from slides should go
should be okay even without this, since there are completed examples.
Add instrs to pull gem5 and gem5-resources locally within the 2024 repo (?)
without this links on slide 47 won't work when viewing the slides locally
47: Add more clarification on how to create subclass
the way the code blocks are split up makes it confusing
02-gem5-resources
During the bootcamp, I think there was a verbal explanation for slide 16 that
isn't written down.
add conclusion slide
Mention somewhere that different workloads/resources require different configurations/workend and workbegin handlers, and point users to gem5/configs/example directory to see examples for certain resources
02/03-running-in-gem5
skimming through most of these quickly since I looked over these slides befoe and found the examples easy to follow
skimming: The traffic generator section and example both clearly indicate where code snippets should go. Easy to follow
02/04-cores
Easy to follow along
add conclusion
looks like there was supposed to be more? Some commented out lines of text at the end
02/05-cache-hierarchies
7: repeat of slide 6?
After slide 7: Add transition slide to explain jump b/w coherency problem and crossbars
11: from slides and template alone, unclear where to add membus
12: Unclear where to put these
14: somewhat unclear where to put this; might be apparent if you actually do the exercise
For the above: probably okay since there's a completed example
16, 18: maybe the incorporate cache function should be included in the example template with comments, since the code from these slides need to go under it
26-28: more text to supplement diagrams
02/06-memory
5 and 6: More text to explain the diagrams
17 or 18: Add path to comm_monitor.py exercise template
b/w 18 and 19: Should there be a summary of what happens if you run the template without the comm monitor?
Add conclusion
02/07-full-system
straightforward for the most part
13: make clear that people following along shouldn't do this step
14: change to Ubuntu version 24.04 (from 22.04)
20: how to get md5sum?
Add conclusion
02/08-accelerating
Pretty straightforward; it was nice that the code to be added also showed the surrounding code from the template
02/09-sampling
Seemed straightforward
02/10-modeling-power
slide 5: add stronger disclaimer re: power model potential inaccuracy
6: Add link to example
add conclusion, cuts off abruptly after "2 KW for the cache????? that seems wrong..."
02/11-multisim
skimmed quickly; I think the example was good when I looked at the slides prior to the bootcamp
Add conclusion
03/01-sim-objects-intro
9: During the bootcamp, I think there was more information on Kconfig in the
live presentation than the slides
Straightforward; the slides show the full chunks of code that people should end up with after they follow more specific instructions
03/02-debugging-gem5
consider adding a more descriptive message that the exercises in this set of slides depend on the exercises from the previous slides (?)
I read the warning when I was editing the 03/03 slides prior to the bootcamp and thought it meant that you needed to know what was covered in the previous slides, and not that the materials depend on the previous presentations
Something that goes like "03/01 through 03/04 are a series of presentations that build off of each other, and the code examples in this presentation depend on the code developed in the previous set of slides. This is the second presentation. If you want to skip to this presentation, you can use the materials linked here [link to completed materials for previous set of slides, 03/01 in this case] by moving (name of folder) into the gem5/src directory (link here)."
Marp preview won't show asciinema unless you give permission
add conclusion
03/03
Has competed chunks of code in the slides; should be straightforward to follow along
Consider adding a more descriptive message about how the examples in this slide deck depends on the examples from 03/01 and 03/02
add conclusion/summary
03/04-ports
Consider adding a more descriptive message about how the examples in this slide deck depends on the examples from 03/01 and 03/02
Add message with something pointing readers to the completed examples from 03/03 if they don't want to walk through 03/01 to 03/03
skimmed; I think it should be okay since Mahyar shows what the completed code should look like at various points
consider adding conclusion for this set of slides + 03/01 through 03/04 as a whole
16: Slide that has commands for codespaces
generally, Mahyar's slides are difficult to follow unless you are actively working through the code examples. There's not much worth in just reading through them.
03-05-modeling-cores
34: where to find decode-method.cc.inc?
40: Where to find decoder-ns.hh.inc?
add conclusion
03-06
more text for slides 4, 5, 6
more explanatory text for slides 22-24
add conclusion
03/07 CHI
slide 4: point toward specific file to put changes into
03/08 Ruby Network
slide 6: may need more explanation
slide 7: template version of ring.py doesn't exist. Completed version does though.
I added a template version that's empty except for comments and imports and fixed the link.
Add conclusion slide
03/09 extending gem5 models
there are a few places throughout the slides where it could be unclear where the code should go. I think it should be fine though, since the completed examples are linked at the beginning.
If we wanted to, we could put slides showing the partially completed code at certain intervals (like what Mahyar did)
note to self: Go through and do a more thorough typo pass
04 GPU
During the bootcamp, there were some typos in commands; check that those were fixed
In slides, point to README in materials with all commands that someone would need
Slides have a cd workspaces/2024 command in most places. We may want to remove these if people can't use the Codespaces after the bootcamp, or add commands for running on their own machines.
05/01-sst
Add more text onto slides 5 through 8
more explanation of slides 14-15
Add conclusion?
05/02-dram
slide 2: possible that something is missing
Add link to dramsim-example.py somewhere in slides
05/03- systemc
slides missing
06/01 contributing
nothing to note
06/02 testing
not much detail for how to complete the example (slide 20)
completed and template versions are available though. Added link to completed on slide 21
Currently, completed up to partway through 03-Developing-gem5-models/04-ports.md.
I also took notes on where the slides may need to be edited to be more clear without a presenter. They are included below. I may update them if I notice anything else during the typo pass.
Notes on what needs to be added to slides so they are usable to an online audience that hasn't watched/attended the bootcamp
General note
Generally, I think it will be difficult for people who worked on the slides to catch everything that people looking at the slides for the first time might be confused about.
Maybe we could add a message like "Feel free to discuss/ask questions in ___ location if you're confused and have questions" and update the slides if any questions are received
Will the gem5 organization continue paying for codespace usage for new users, or will they have to pay it themselves?
01/01-introduction-to-bootcamp
not important: slides 9 and 10 could use more context (slide 9 - a long list of contributors to the latest gem5 paper, slide 10 - subtitles to diagrams)
slide 12 - code of conduct - add link or put a more descriptive sentence here
slide 29: add text description of software architectures
add conclusion
01/02-getting-started
Will people still be able to use codespaces for the tutorial repo, but "pay" for the usage themselves?
Remove instrs on joining the github classroom?
add instrs on getting tutorial repo locally?
It looks like the aliases (gem5, gem5-mesi, etc) don' twork outside of codespaces - include commands for running gem5 locally.
Tell people what VS Code extentions to add if they are running locally?
01/03-python-background
02/01-stdlib
slide 14: gem5-mesi alias
slide 19: add instrs on how to build gem5 with different Ruby protocols (or link to another place)
34: seems to be some missing code after the first two sentences
Slides 32-39: Add more comments in template for where code blocks from slides should go
Add instrs to pull gem5 and gem5-resources locally within the 2024 repo (?)
47: Add more clarification on how to create subclass
02-gem5-resources
During the bootcamp, I think there was a verbal explanation for slide 16 that isn't written down.
add conclusion slide
Mention somewhere that different workloads/resources require different configurations/workend and workbegin handlers, and point users to gem5/configs/example directory to see examples for certain resources
02/03-running-in-gem5
02/04-cores
Easy to follow along
add conclusion
looks like there was supposed to be more? Some commented out lines of text at the end
02/05-cache-hierarchies
7: repeat of slide 6?
After slide 7: Add transition slide to explain jump b/w coherency problem and crossbars
11: from slides and template alone, unclear where to add membus
12: Unclear where to put these
14: somewhat unclear where to put this; might be apparent if you actually do the exercise
16, 18: maybe the incorporate cache function should be included in the example template with comments, since the code from these slides need to go under it
26-28: more text to supplement diagrams
02/06-memory
5 and 6: More text to explain the diagrams
17 or 18: Add path to comm_monitor.py exercise template
b/w 18 and 19: Should there be a summary of what happens if you run the template without the comm monitor?
Add conclusion
02/07-full-system
02/08-accelerating
02/09-sampling
02/10-modeling-power
slide 5: add stronger disclaimer re: power model potential inaccuracy
6: Add link to example
add conclusion, cuts off abruptly after "2 KW for the cache????? that seems wrong..."
02/11-multisim
skimmed quickly; I think the example was good when I looked at the slides prior to the bootcamp
Add conclusion
03/01-sim-objects-intro
9: During the bootcamp, I think there was more information on Kconfig in the live presentation than the slides
Straightforward; the slides show the full chunks of code that people should end up with after they follow more specific instructions
03/02-debugging-gem5
consider adding a more descriptive message that the exercises in this set of slides depend on the exercises from the previous slides (?)
Marp preview won't show asciinema unless you give permission
add conclusion
03/03
Has competed chunks of code in the slides; should be straightforward to follow along
Consider adding a more descriptive message about how the examples in this slide deck depends on the examples from 03/01 and 03/02
add conclusion/summary
03/04-ports
Consider adding a more descriptive message about how the examples in this slide deck depends on the examples from 03/01 and 03/02
skimmed; I think it should be okay since Mahyar shows what the completed code should look like at various points
consider adding conclusion for this set of slides + 03/01 through 03/04 as a whole
16: Slide that has commands for codespaces
generally, Mahyar's slides are difficult to follow unless you are actively working through the code examples. There's not much worth in just reading through them.
03-05-modeling-cores
34: where to find decode-method.cc.inc?
40: Where to find decoder-ns.hh.inc?
add conclusion
03-06
03/07 CHI
03/08 Ruby Network
slide 6: may need more explanation
slide 7: template version of ring.py doesn't exist. Completed version does though.
Add conclusion slide
03/09 extending gem5 models
there are a few places throughout the slides where it could be unclear where the code should go. I think it should be fine though, since the completed examples are linked at the beginning.
note to self: Go through and do a more thorough typo pass
04 GPU
During the bootcamp, there were some typos in commands; check that those were fixed
In slides, point to README in materials with all commands that someone would need
Slides have a
cd workspaces/2024
command in most places. We may want to remove these if people can't use the Codespaces after the bootcamp, or add commands for running on their own machines.05/01-sst
Add more text onto slides 5 through 8
more explanation of slides 14-15
Add conclusion?
05/02-dram
slide 2: possible that something is missing
Add link to dramsim-example.py somewhere in slides
05/03- systemc
06/01 contributing
06/02 testing
06/03 gem5-at home