Hi Michael, I'm not sure how to quantify "reliably" but with the lack of extensive regressions for SMT on various CPU models all I can say that it *should* work with configuration/parameters changes in SE mode. Over the years, different people have varied issue width as well as number of threads so if it's broken, we need to go and fix it and finally put some regressions (alas, that's probably on me to do but I always seem to find a task that supercedes regression updates)
In terms of inorder, I believed Andreas deleted the additional "pipeline_traits" files or at the very least deprecated them? I could be wrong on that. In any event, changing to SMT should be changing the MaxThreads and the "numThreads" parameter that gets sent to the CPU. "numThreads" is a parameter while MaxThreads is compiled in. Changing pipe stages is another paremeter to be set and the pipe stages functionality should be done in the createFrontSked and createBackSked functions in cpu.cc. Since fetchBuffering and the other memory system changes have been added to gem5, I would not be surprised if there are slight updates to InOrder to get SMT back going. If you do find a bug, please send it to the mailing list and we can usually get it resolved fairly quickly. As for O3, I'd say the same story as InOrder, although there is at least a 2T-hello world test there to sanity check nothing significantly alters behavior. With regards to FS mode, that hasn't been done, I dont know of who is actively working on it, but I've suggested that this could be implemented by using the SimpleCPU or CheckerCPU as a golden model while you find all the places where you need to update say paramCount[0] to paramCount[tid]. -Korey On Wed, Sep 26, 2012 at 11:51 AM, Michael Levenhagen <mjle...@sandia.gov>wrote: > With which ISAs and CPU models does SMT work? > I've tried running different configs and it appears that only "ALPHA + > detailed" works. > I chased down a panic when I attempt to use "ALPHA+inorder" and it says I > need to increase 'MaxThreads'. > I looked at the "inorder" cpu code and notice that > pipeline_traits.5stage.hh, > pipeline_traits.9stage.hh and > pipeline_traits.9stage.smt2.hh, > have MaxThreads set to something greater than 1. > > Does SMT work "reliably" with "ALPHA+detailed"? > Would "ALPHA+inorder" work with a code configuration change? > > Mike Levenhagen > > > _______________________________________________ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > -- - Korey
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users