GEM5 icon indicating copy to clipboard operation
GEM5 copied to clipboard

Development Roadmap

Open jensen-yan opened this issue 4 months ago • 0 comments

Here is the development roadmap. Contributions and feedback are welcome.

Project Roadmap

1. Dynamic Vector Length Support

  • [ ] Implement variable vector length (not fixed at 128).

2. Value Prediction

  • [ ] Loop iterators.
  • [ ] vl prediction.
  • [ ] Generic value prediction.

3. Speculative Memory Bypassing

  • [ ] Table-less implementation.
  • [ ] Dynamic bypassing.

4. Top-down Analysis Framework

  • [ ] Further breakdown of details in top-down approach.
  • [ ] Detailed documentation for top-down methodology.
  • [ ] TIP/TEA integration.

5. Front-End Optimizations

  • [ ] 8-wide instruction issue
  • [ ] Two-taken branch predictor
  • [ ] uBTB: Expand for improved timing guarantees.
  • [ ] TAGE:
    • [ ] Increase from 5-table to 10-table cascaded comparison for better timing and reduced MPKI.
    • [ ] Compare increasing the number of levels versus increasing the number of entries.
  • [ ] Fetch Pipeline:
    • [ ] Refactor for two-taken + two-fetch mechanism.
    • [ ] Enable single-cycle access to multiple cache lines.
    • [ ] Clean up fetch and cache pipeline code.

6. Back-End Improvements

  • [ ] Load/Store calibration: challenging, important, but not urgent.
  • [ ] Functional unit (FU) calibration.

How to Contribute to This Roadmap

  1. To add a new task, use the following format:

    - [ ] Task description
    
  2. To mark a task as completed, change [ ] to [x]:

    - [x] Completed task
    
  3. To link to an issue or pull request, use the # symbol followed by the issue/PR number:

    - [ ] Implement feature X (#123)
    
  • [ ] Implement feature X (#123)
  1. Feel free to add comments or additional information using HTML comment syntax:
    <!-- This is a comment that won't be visible in the rendered markdown -->
    

jensen-yan avatar Oct 11 '24 10:10 jensen-yan