Is there a way to have a parameterized replacement policy/branch predictor/prefetcher in ChampSim such that the parameter is passed via the config file? #415
-
I want to implement a replacement policy which has a tuning knob. I want to pass this constant to my policy as a parameter via the I know that I can hardcode this value in my policy bu I don't want to do that. I want to be able to change this value via the config. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
I've theorized about this before, and I would love it if it's eventually possible. The mechanisms are probably in place on the develop branch, it would probably just take someone willing to work on it. I think something that you could do is to use the development branch, where modules can be specified as classes, and to make the module class a template class, like
|
Beta Was this translation helpful? Give feedback.
I've theorized about this before, and I would love it if it's eventually possible. The mechanisms are probably in place on the develop branch, it would probably just take someone willing to work on it.
I think something that you could do is to use the development branch, where modules can be specified as classes, and to make the module class a template class, like
template <uint32_t param> class MyReplacement : public champsim::modules::replacement {};
. Then, in the configuration, you could specify