mem-cache: Add multi-prefetcher adaptor

This patch adds a meta-prefetcher that enables gem5's cache models to
connect to multiple prefetchers. Sub-prefetchers still use the
probes-based interface and training can be controlled
independently. However, when the cache requests a prefetch packet, the
adaptor traverses the priority list of prefetchers and uses the first
prefetcher that is able to generate a prefetch.

Kudos to Mitch Hayenga for the original version of this patch.

Change-Id: I25569a834997e5404c7183ec995d212912c5dcdf
Signed-off-by: Andreas Sandberg <>
Reviewed-by: Nikos Nikoleris <>
Reviewed-by: Daniel Carvalho <>
Maintainer: Nikos Nikoleris <>
Tested-by: kokoro <>
5 files changed