Difference between revisions of "TutorialScratchPad"

From gem5
Jump to: navigation, search
 
(3 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: TBD
+
** 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
+
* gem5 Basics (20 minutes)
*** File Hierarchy  
+
** Presented By: Nate
*** Run Scripts (?)
+
** File Hierarchy  
*** SE Mode v. FS Mode - Basic Building / Runinng
+
** Run Scripts (?)
*** Atomic v. Timing
+
** SE Mode v. FS Mode - Basic Building / Runinng
*** Stats
+
** Atomic v. Timing
*** Debugging Tools (debug-flags)
+
** 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: ARM - Ali & x86 - Gabe
+
**  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 24: Line 40:
 
** Example: From Memory to Decode to an Instruction (BaseDynInst)???
 
** Example: From Memory to Decode to an Instruction (BaseDynInst)???
 
* CPU Models (15 minutes: ? slides)
 
* 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???
* Break - 20 mins
 
 
* Ruby (50 minutes: ~25 slides)
 
* Ruby (50 minutes: ~25 slides)
** Presentation by: Brad
+
** 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
* 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?
 
 
* 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 23: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