GUI for Open Source Computer Architecture Simulation
|Affiliation||UC Davis Computer Science (DArchR: https://arch.cs.ucdavis.edu/)|
|Project title||GUI for Open Source Computer Architecture Simulation|
|Background||gem5 (gem5.org) is a highly active open source project used by 100s of computer architecture researchers all over the world including at leading companies such as AMD, ARM, and Google. In computer architecture research, we often use software simulators to predict the performance impact of new hardware designs. gem5 is the most popular and widely used computer architecture simulation platform in academic research (over 3000 citations). gem5 currently has a sophisticated Python-based configuration system. This configuration system is incredibly powerful, but it is also difficult for new users to understand.|
|Description||This project will add a GUI front end to gem5 to help users configure the system. This new front end will allow users to drag-and-drop components of the system (e.g., CPU, memory, caches) and connect them with a visual interface. This project will be fully open source and upstreamed to the main gem5 repository (https://gem5.googlesource.com/public/gem5). Your contributions will be used across the world by both academics and in industrial research labs!
You will work with the open source gem5 community through issue tracking, code review, and online discussions. This project will give you valuable experience in working with a large software development team, and since it’s open source, it will be a fantastic link on a resume.
|Deliverable||A GUI application and the corresponding code extensions to the current gem5 code base to configure and drive the simulator system.|
|Skill set desirable||Python, GUI toolkits, Linux|
|Client time availability||30-60 min weekly or more|
|IP requirement||Open source project|