Skip to main content

Creating Custom Objects

One of the most useful features of gem5 is the extensibility of the simulation engine. Anyone can use and modifiy the components of the cpu to better construct a research system to simulate. If you had a novel idea for a branch predictor, you could implement it and test it. You can do the same for caches, there is precedent for modifying the MESI protocol or doing any number of other modifications to the structure of your CPU. I have refrained from creating a new video for this topic, since the documentation I provide and that which is on the gem5 website is comprehensive and well done.