The Directed Tester is for generating a stream of requests, where two consecutive requests are separated by a fixed number of bytes. The requests can be a mix of reads and writes, or they can be invalidations. This can be useful in testing a prefetcher or for generally testing a coherence protocol implemented in Ruby. The source files related to the tester are present in the directory src/cpu/testers/directedtest. The file configs/examples/ruby_direct_test.py is used for configuration and execution of the test. For example, the following command can be used for testing --
Though one can specify many different options to the directed tester, some of them are note worthy.
|Number of cpus injecting load/store requests to the memory system.
|Number of cycles to simulate.
|Number of requests to be performed.
|SeriesGetx / SeriesGets / Invalidate
|Seed for initialization of the random number generator.