Difference between revisions of "TutorialScratchPad"
From gem5
(4 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
* Introduction to gem5 (15-20 minutes: 10 slides) | * Introduction to gem5 (15-20 minutes: 10 slides) | ||
− | ** Presentation by: | + | ** Presentation by: Brad |
** Tutorial Goals and Timeline | ** Tutorial Goals and Timeline | ||
** High-level view of the gem5: | ** High-level view of the gem5: | ||
Line 8: | Line 8: | ||
** Discuss goals, design principles, etc. | ** Discuss goals, design principles, etc. | ||
*** Basically review the high-level points of the CAN article | *** Basically review the high-level points of the CAN article | ||
− | + | * gem5 Basics (20 minutes) | |
− | *** File Hierarchy | + | ** Presented By: Nate |
− | + | ** File Hierarchy | |
− | + | ** Run Scripts (?) | |
− | + | ** SE Mode v. FS Mode - Basic Building / Runinng | |
− | *** Stats | + | ** Atomic v. Timing |
− | *** | + | ** Running Examples! |
+ | ** Stats | ||
+ | * Debugging Infrastucture (15 minutes) | ||
+ | ** Presented By: Ali | ||
+ | ** Debug flags | ||
+ | *** user/kernel tracing | ||
+ | *** tracediff | ||
+ | *** gdb helper | ||
+ | *** Ref counting pointers? | ||
+ | * 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 | ||
+ | * Break - 30 mins | ||
* Multiple ISA support (15 minutes: ? slides) | * Multiple ISA support (15 minutes: ? slides) | ||
− | ** Presentation by: | + | ** Presentation by: Gabe |
** ISA description language | ** ISA description language | ||
*** Review high-level concepts and what is new versus the past tutorial | *** Review high-level concepts and what is new versus the past tutorial | ||
Line 23: | Line 39: | ||
** x86 Key Points | ** x86 Key Points | ||
** Example: From Memory to Decode to an Instruction (BaseDynInst)??? | ** Example: From Memory to Decode to an Instruction (BaseDynInst)??? | ||
− | * CPU Models ( | + | * CPU Models (15 minutes: ? slides) |
+ | ** Korey | ||
** Key Interfaces: | ** Key Interfaces: | ||
*** ISA | *** ISA | ||
Line 32: | Line 49: | ||
**InOrder CPU - "Medium" Level | **InOrder CPU - "Medium" Level | ||
*** Example: Moving Through the InOrder Model??? | *** Example: Moving Through the InOrder Model??? | ||
− | |||
* Ruby (50 minutes: ~25 slides) | * Ruby (50 minutes: ~25 slides) | ||
− | ** Presentation by: | + | ** Presentation by: Derek |
** Discuss design concepts | ** Discuss design concepts | ||
*** Separation of policies | *** Separation of policies | ||
Line 48: | Line 64: | ||
*** Garnet? | *** Garnet? | ||
** Example: Life of a Ruby Request | ** Example: Life of a Ruby Request | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* Conclusions & questions (20 minutes: 10 slides) | * Conclusions & questions (20 minutes: 10 slides) | ||
+ | ** Presenter: Steve | ||
** Status Matrix | ** Status Matrix | ||
** Developer tools | ** Developer tools |
Latest revision as of 18:11, 23 May 2011
- Introduction to gem5 (15-20 minutes: 10 slides)
- Presentation by: Brad
- 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 (20 minutes)
- Presented By: Nate
- File Hierarchy
- Run Scripts (?)
- SE Mode v. FS Mode - Basic Building / Runinng
- Atomic v. Timing
- Running Examples!
- Stats
- Debugging Infrastucture (15 minutes)
- Presented By: Ali
- Debug flags
- user/kernel tracing
- tracediff
- gdb helper
- Ref counting pointers?
- 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
- Break - 30 mins
- Multiple ISA support (15 minutes: ? slides)
- Presentation by: 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 (15 minutes: ? slides)
- Korey
- 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???
- Ruby (50 minutes: ~25 slides)
- Presentation by: Derek
- 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
- Conclusions & questions (20 minutes: 10 slides)
- Presenter: Steve
- 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