1 / 13

5MD00: Single-Core Assignment

5MD00: Single-Core Assignment. Yifan He 2011-12-15. What is this assignment about?. Build your own superscalar machine! How? A superscalar architecture simulator , with tunable hardware parameters e.g., branch predictor type (always taken, always not taken, bimodal, 2-level, …).

manon
Télécharger la présentation

5MD00: Single-Core Assignment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 5MD00: Single-Core Assignment Yifan He 2011-12-15

  2. What is this assignment about? • Build your own superscalar machine! • How? • A superscalar architecture simulator, with tunable hardware parameters • e.g., branch predictor type (always taken, always not taken, bimodal, 2-level, …)

  3. Which simulator are we going to use? • SimpleScalar[1] • Cycle-accurate • Can provide a lot of detailed information • Very popular single-core simulator • Wattch[2] • SimpleScalar + power information [1]. http://www.simplescalar.com/ [2]. http://www.eecs.harvard.edu/~dbrooks/wattch-form.html

  4. What are our design metrics? • Performance • IPC (instruction per cycle) • Performance & Energy Efficiency • EDP (energy-delay product)

  5. What kind of parameters can we tune?

  6. What should we do with respect to these parameters? • First Step: tune a specific parameter For example, tune the parameter of branch predictor type (-bpred)

  7. What should we do with respect to these parameters? • First Step: tune a specific parameter For example, tune the parameter of branch predictor type (-bpred)

  8. What should we do with respect to these parameters? • First Step: tune a specific parameter Tune the parameter of bimodal branch predictor table size (-bpred:bimod)

  9. 2-Level branch predictor

  10. What should we do with respect to these parameters? • Second Step: Tune a few closely-related parameters (from the same group) together e.g., decode width (-decode:width), issue width (-issue:width), and commit width (-commit:width) • Require insight into the superscalar architecture • You can use a script to automate this!

  11. What should we do with respect to these parameters? • Third Step: Tune a few related parameters (from different groups) together e.g., issue width (-issue:width), and number of function units (-res:ialu, -res:imult) You can use a script to automate this!

  12. Assignment information • Individual Assignment • Assignment Website: https://sites.google.com/site/5md00sca • Server Account: Pick up one account from our secretary (PT9.24) • Deadline Jan. 9, 2012

  13. Questions?

More Related