Difference between revisions of "TutorialScratchPad"
From gem5
(Created page with "* Introduction to gem5 (15-20 minutes: 10 slides) ** Presentation by: TBD ** Tutorial Goals and Timeline ** High-level view of the gem5: *** What’s new? *** The "best" parts o...") |
|||
Line 15: | Line 15: | ||
*** Stats | *** Stats | ||
*** Debugging Tools (debug-flags) | *** Debugging Tools (debug-flags) | ||
− | * Multiple ISA support ( | + | * Multiple ISA support (15 minutes: ? slides) |
** Presentation by: ARM - Ali & x86 - Gabe | ** Presentation by: ARM - Ali & x86 - Gabe | ||
** ISA description language | ** ISA description language | ||
Line 55: | Line 55: | ||
*** What are the command line options to use? | *** What are the command line options to use? | ||
*** DEMO | *** DEMO | ||
− | * Debugging Infrastucture | + | * Debugging Infrastucture (15 minutes) |
** Debug flags | ** Debug flags | ||
*** user/kernel tracing | *** user/kernel tracing | ||
Line 61: | Line 61: | ||
*** gdb helper | *** gdb helper | ||
*** Ref counting pointers? | *** Ref counting pointers? | ||
− | * Conclusions & questions (20 minutes: | + | * Conclusions & questions (20 minutes: 10 slides) |
** Status Matrix | ** Status Matrix | ||
** Developer tools | ** Developer tools | ||
Line 67: | Line 67: | ||
*** Code reviews | *** Code reviews | ||
*** Mailing list (shouldn’t we mention this in the Introduction? Having an active mailing list is like a feature :) … ) | *** Mailing list (shouldn’t we mention this in the Introduction? Having an active mailing list is like a feature :) … ) | ||
− | * Future Work/In Development (? mins, : ? slides) | + | ** Future Work/In Development (? mins, : ? slides) |
− | ** Highlight the different development efforts | + | *** Highlight the different development efforts |
*** Prelude to the development discussion in the afternoon | *** Prelude to the development discussion in the afternoon | ||
*** What are near-term/long-term plans for each major bullet point above? | *** What are near-term/long-term plans for each major bullet point above? | ||
** Invite attendees to speak up and start to form "birds of feather" groupings for 2nd half of tutorial | ** Invite attendees to speak up and start to form "birds of feather" groupings for 2nd half of tutorial |
Revision as of 16:37, 23 May 2011
- Introduction to gem5 (15-20 minutes: 10 slides)
- Presentation by: TBD
- Tutorial Goals and Timeline
- High-level view of the gem5:
- What’s new?
- The "best" parts of Ruby
- The "best" parts of M5
- Discuss goals, design principles, etc.
- Basically review the high-level points of the CAN article
- gem5 Basics
- File Hierarchy
- Run Scripts (?)
- SE Mode v. FS Mode - Basic Building / Runinng
- Atomic v. Timing
- Stats
- Debugging Tools (debug-flags)
- Multiple ISA support (15 minutes: ? slides)
- Presentation by: ARM - Ali & x86 - Gabe
- ISA description language
- Review high-level concepts and what is new versus the past tutorial
- We probably don’t have enough time to discuss a lot of implementation
- ARM Implementation Key Points
- x86 Key Points
- Example: From Memory to Decode to an Instruction (BaseDynInst)???
- CPU Models (30 minutes: ? slides)
- Key Interfaces:
- ISA
- Ports/Memory
- SimpleCPU Overview
- Detailed CPU Commonalities: TimeBuffer Communication & ThreadContext
- O3CPU – Pipeline Stages and Resources Description
- InOrder CPU - "Medium" Level
- Example: Moving Through the InOrder Model???
- Key Interfaces:
- Break - 20 mins
- Ruby (50 minutes: ~25 slides)
- Presentation by: Brad
- Discuss design concepts
- Separation of policies
- Rich configurability
- Rapid prototyping
- Components – highlighting differences from GEMS
- Coherence protocols
- Highlight local variables & input parameters to SLICC files
- Protocol independent structures
- Topology & networks
- Topology Spec. Basics?
- Simple Network?
- Garnet?
- Example: Life of a Ruby Request
- Checkpoint and fast-forwarding (25 minutes: ? slides)
- Presented by: Joel
- Brief description then demo
- Where are checkpoints generated?
- What are the key functions used to create/read a checkpoint?
- What are the command line options to use?
- DEMO
- Debugging Infrastucture (15 minutes)
- Debug flags
- user/kernel tracing
- tracediff
- gdb helper
- Ref counting pointers?
- Debug flags
- Conclusions & questions (20 minutes: 10 slides)
- Status Matrix
- Developer tools
- Regression tester
- Code reviews
- Mailing list (shouldn’t we mention this in the Introduction? Having an active mailing list is like a feature :) … )
- Future Work/In Development (? mins, : ? slides)
- Highlight the different development efforts
- Prelude to the development discussion in the afternoon
- What are near-term/long-term plans for each major bullet point above?
- Invite attendees to speak up and start to form "birds of feather" groupings for 2nd half of tutorial