cpu: Add request elasticity to the traffic generator
authorAndreas Hansson <andreas.hansson@arm.com>
Thu, 30 May 2013 16:54:06 +0000 (12:54 -0400)
committerAndreas Hansson <andreas.hansson@arm.com>
Thu, 30 May 2013 16:54:06 +0000 (12:54 -0400)
commitfc09bc8678b5e78d553e009105c58e5c5d5befb4
tree6d5ff719387cd2e24d549f575576589dbfd98f6e
parent4931414ca79b97ee64a958c4dd4ed1cafc44b4bd
cpu: Add request elasticity to the traffic generator

This patch adds an optional request elasticity to the traffic
generator, effectievly compensating for it in the case of the linear
and random generators, and adding it in the case of the trace
generator. The accounting is left with the top-level traffic
generator, and the individual generators do the necessary math as part
of determining the next packet tick.

Note that in the linear and random generators we have to compensate
for the blocked time to not be elastic, i.e. without this patch the
aforementioned generators will slow down in the case of back-pressure.
src/cpu/testers/traffic_gen/TrafficGen.py
src/cpu/testers/traffic_gen/generators.cc
src/cpu/testers/traffic_gen/generators.hh
src/cpu/testers/traffic_gen/traffic_gen.cc
src/cpu/testers/traffic_gen/traffic_gen.hh