> On July 7, 2015, 9:31 a.m., Andreas Hansson wrote: > > configs/ruby/MESI_Three_Level.py, line 103 > > <http://reviews.gem5.org/r/2776/diff/4/?file=47827#file47827line103> > > > > As far as I can tell the code is identical, with i replaced with 0. i > > would be 0 for the first item. Am I missing something? I see no mentioning > > of any ports in this block of code.
The problem is with the tester run script reusing the generic Ruby configs. options.num_cpus has different semantics for the tester; basically it is used to specify the number of cpu ports that are connected to the tester. You can also think of it has the number of virtual CPUs the tester represents. The tester, however has only 1 "cpu" i.e., system.cpu = tester, and thus len(system.cpu) = 1. The loop code is reused by the tester to implicitly set the number of L1s and sequencers equal to options.num_cpus, but for the tester this causes simulation to fail if you specify -n > 1. So we need this special case to set the clk_domain of the L1 controller and sequencers to the tester, which is system.cpu[0]. This is the quickest and least intrusive fix to this. Otherwise I think some significant refactoring would be necessary. - Tony ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/2776/#review6730 ----------------------------------------------------------- On July 7, 2015, 8:55 a.m., Tony Gutierrez wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/2776/ > ----------------------------------------------------------- > > (Updated July 7, 2015, 8:55 a.m.) > > > Review request for Default. > > > Repository: gem5 > > > Description > ------- > > Changeset 10877:58e937f1077b > --------------------------- > ruby: cleaner ruby tester support > > This patch allows the ruby random tester to use ruby ports that may only > support instr or data requests. This patch is similar to a previous changeset > (8932:1b2c17565ac8) that was unfortunately broken by subsequent changesets. > This current patch implements the support in a more straight-forward way. > The patch also includes better DPRINTFs and generalizes the retry behavior > needed by the ruby tester so that other testers/cpu models can use it as well. > > > Diffs > ----- > > src/mem/ruby/system/Sequencer.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/example/ruby_random_test.py > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MESI_Three_Level.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MESI_Two_Level.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MI_example.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MOESI_CMP_directory.py > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MOESI_CMP_token.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > configs/ruby/MOESI_hammer.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/cpu/testers/rubytest/Check.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/cpu/testers/rubytest/CheckTable.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/cpu/testers/rubytest/RubyTester.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/cpu/testers/rubytest/RubyTester.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/cpu/testers/rubytest/RubyTester.py > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/RubyPort.hh ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/RubyPort.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > > Diff: http://reviews.gem5.org/r/2776/diff/ > > > Testing > ------- > > > Thanks, > > Tony Gutierrez > > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
