8
Project Management, Contributing & Conclusion FireSim Intensive Chisel Community Conference 2018 Speaker: David Biancolin

Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Project Management, Contributing & Conclusion

FireSim IntensiveChisel Community Conference 2018

Speaker: David Biancolin

Page 2: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Development Model – Branches

• FireSim and its key submodules (FireChip, MIDAS, aws-fpga) have two write-controlled branches• master• Stable• Contains the most recent release of FireSim• Can replicate ISCA2018 paper results

• dev• Main development branch • Base branch for feature PRs and non-critical bug fixes• Every merge commit has globally shared, regenerated AGFIs

2

Page 3: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Development Model – Merges & Releases

• To merge a feature branch into dev:• Pass all MIDAS-level tests (in sim/: `make test`)• Regenerate all AGFIs if RTL changes were made• Associated submodule PRs should be merged; submodule pointers should

point at merge commit on dev

• Changes to dev will be summarized in a “Dev-tracking PR”• PR description will become the Changelog entry

• Dev will be periodically merged into master and tagged as a release• Changelog will be updated• Submodule dev branches will also be merged into master

3

Page 4: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

How to Get Help

• FireSim and MIDAS adds a bunch of additional complexity on top of Rocket-Chip, Chisel, FIRRTL, Scala…• But there’s a team of us here to help!

• For general questions:• Post on the google groups: https://groups.google.com/forum/#!forum/firesim• Check out the docs:

https://docs.fires.im/en/latest/• (Nascent) FAQ section: https://docs.fires.im/en/latest/Advanced-

Usage/FAQs.html

4

Page 5: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Reporting Issues

• If you think you’ve encountered a bug (in FireSim or MIDAS):• Open an issue on FireSim’s github page

• Try your best to open an issue in the most relevant repo• Please don’t open duplicates across multiple repos! • If you are unsure, default to FireSim and we’ll be happy to redirect you

5

Page 6: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Contributing

• We welcome PRs!• Issues are labeled with “Good First Issue”• Ask on the google groups for suggestions

6

Page 7: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Regarding Future Work

• There are many research projects underway at UCB-BAR using and improving FireSim

• Many will be merged into mainline FireSim

• There will be API breakages -> We apologize in advance

• Watch the changelogs, dev tracking PRs

Our goal: make FireSim the standard open way to do fast full-system simulation of Chisel-designed systems, especially ones based on Rocket-Chip. Focus on:

• Generality (eg. support multi-clock target designs)

• Robustness (eg. More extensive testing in RTL-simulation; CI; regressions)

• Debuggability (eg. DESSERT features) 7

Page 8: Project Management, Contributing & Conclusion · •Base branch for feature PRs and non-critical bug fixes •Every merge commit has globally shared, regenerated AGFIs 2. Development

Conclusion

Key links: • Website: https://fires.im• Google Groups: https://groups.google.com/forum/#!forum/firesim• Docs: https://docs.fires.im/en/latest/• Twitter: @firesimproject

Acknowledgements: The information, data, or work presented herein was funded in part by the Advanced Research Projects Agency-Energy (ARPA-E), U.S. Department of Energy, under Award Number DE-AR0000849. Research was partially funded by ADEPT Lab industrial sponsor Intel, RISE Lab sponsor Amazon Web Services, and ADEPT Lab affiliates Google, Huawei, Siemens, SK Hynix, and Seagate. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

8