Difference between revisions of "TutorialScratchPad"
From gem5
					
										
					
					| (One intermediate revision by one other user not shown) | |||
| Line 30: | Line 30: | ||
*** What are the command line options to use?  | *** What are the command line options to use?  | ||
*** DEMO  | *** DEMO  | ||
| + | * Break - 30 mins  | ||
* Multiple ISA support (15 minutes: ? slides)  | * Multiple ISA support (15 minutes: ? slides)  | ||
**  Presentation by: Gabe  | **  Presentation by: Gabe  | ||
| Line 48: | 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 65: | Line 65: | ||
** 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