Hey Gabe, I love this idea! It would be nice if you could document the code as you go, too. It could serve as a good learning tool in the future.
Cheers, Jason On Mon, Mar 1, 2021 at 7:56 AM Giacomo Travaglini via gem5-dev < gem5-dev@gem5.org> wrote: > +2, +1, Merged > > 😊 > > Giacomo > > > -----Original Message----- > > From: Gabe Black via gem5-dev <gem5-dev@gem5.org> > > Sent: 27 February 2021 10:13 > > To: gem5 Developer List <gem5-dev@gem5.org> > > Cc: Gabe Black <gabe.bl...@gmail.com> > > Subject: [gem5-dev] de-templating the O3 CPU > > > > Hi folks. The O3 CPU uses templates pretty heavily, I think nominally to > make it > > possible to switch in different parts of the CPU to change how, for > example, a > > pipeline stage is implemented. > > > > Realistically, the different parts of the CPU are probably too > interdependent > > for that to actually work, and all the templates and indirection make > the code a > > lot more complicated than it really needs to be. > > > > Also, there is a pseudo-generic dynamic instruction base class in > > cpu/base_dyn_inst.hh which could, again theoretically, be used as a base > class > > for other CPUs to reuse. Unfortunately that too is probably too tied to > its only > > consumer, the O3 CPU, to be realistically reusable. > > > > I would like to merge the base dynamic instruction class into the O3 > version, > > and then de-templatize the whole O3 CPU. I think that will make the code > a lot > > easier to work on, and I think our ability to maintain and update O3 is > > something we need to improve in at least the medium term. > > > > Any thoughts? Objections? Votes of support? > > > > Gabe > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. > _______________________________________________ > gem5-dev mailing list -- gem5-dev@gem5.org > To unsubscribe send an email to gem5-dev-le...@gem5.org > %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________ gem5-dev mailing list -- gem5-dev@gem5.org To unsubscribe send an email to gem5-dev-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s