> On May 12, 2015, 3:24 p.m., Jason Power wrote: > > configs/ruby/MESI_Three_Level.py, line 106 > > <http://reviews.gem5.org/r/2776/diff/1/?file=45127#file45127line106> > > > > Should these changes be in a different patch since they are orthogonal > > to the Ruby tester? > > > > I would be OK to keep them here, but you should update the commit > > message to say you change the clock domain for all of the controllers.
Without this change, the Ruby tester does not work when multiple CPUs are specified. I believe this is the bug that Nilay discussed a few weeks ago. We can update the commit message if you'd like. > On May 12, 2015, 3:24 p.m., Jason Power wrote: > > src/mem/ruby/system/RubyPort.cc, line 298 > > <http://reviews.gem5.org/r/2776/diff/1/?file=45140#file45140line298> > > > > I don't understand why the random tester doesn't want to retry failed > > requests. Could you explain why this feature is necessary? It's been a few > > years since I've looked deeply at the random tester. I'll hold off on > > broadcasting my opinion on this until I understand it better :). > > > > Again, this may be more appropriate as a separate patch, but I'm not > > going to push hard on this. The ruby tester was never designed to handle failed request. The ruby tester is designed to send large amount of racey requests to stress the protocol logic. It does this by avoiding flow control and retries. > On May 12, 2015, 3:24 p.m., Jason Power wrote: > > src/mem/ruby/system/RubyPort.cc, line 380 > > <http://reviews.gem5.org/r/2776/diff/1/?file=45140#file45140line380> > > > > Did you mean to call the new sendRetries function here? Yes. Thanks for pointing that out. That change must have gotten lost in one of the patch mergers/rebases. > On May 12, 2015, 3:24 p.m., Jason Power wrote: > > src/mem/ruby/system/RubyPort.cc, line 407 > > <http://reviews.gem5.org/r/2776/diff/1/?file=45140#file45140line407> > > > > Does this function ever get called? > > > > Is this in one of the (many many) patches I haven't gotten to yet, or > > should be called from above? The call to this function does not exist in the set of patches that Tony posted yesterday, but the fix you mentioned above will call it. Also there will be upcoming patches that call it. > On May 12, 2015, 3:24 p.m., Jason Power wrote: > > src/mem/ruby/system/RubyPort.cc, line 413 > > <http://reviews.gem5.org/r/2776/diff/1/?file=45140#file45140line413> > > > > Does it make sense to call this function when the retryList is empty? > > Why not have an assert instead of an if statement which guards the entire > > function? > > > > I suggest either changing the name (trySendRetries), or using the if > > statement outside of this function and instead use an assert within the > > function. Sure we can change the name to trySendRetries. - Brad ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/2776/#review6171 ----------------------------------------------------------- On May 11, 2015, 10:28 p.m., Tony Gutierrez wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/2776/ > ----------------------------------------------------------- > > (Updated May 11, 2015, 10:28 p.m.) > > > Review request for Default. > > > Repository: gem5 > > > Description > ------- > > Changeset 10833:e624796bae17 > --------------------------- > 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 > ----- > > configs/example/ruby_random_test.py > fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MESI_Three_Level.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MESI_Two_Level.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MI_example.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MOESI_CMP_directory.py > fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MOESI_CMP_token.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > configs/ruby/MOESI_hammer.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/cpu/testers/rubytest/Check.cc fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/cpu/testers/rubytest/CheckTable.cc > fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/cpu/testers/rubytest/RubyTester.hh > fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/cpu/testers/rubytest/RubyTester.cc > fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/cpu/testers/rubytest/RubyTester.py > fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/mem/packet_queue.cc fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/mem/ruby/system/RubyPort.hh fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/mem/ruby/system/RubyPort.cc fbdaa08aaa426b9f4660c366f934ccb670d954ec > src/mem/ruby/system/Sequencer.py fbdaa08aaa426b9f4660c366f934ccb670d954ec > > 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
