Hi Abu Saad,

The correct variable to change is in uArchImpl.cpp.  It is local to each 
core.  You can look at where it is used in cycle.cpp.  In those same 
methods, you can change the value locally for each core.  The options 
variable is only read once, at the beginning of simulation, into each 
retireWidth in uArchImpl.

- Jared

Excerpts From "Abu Saad Papa" <[email protected]>:
 [Simflex] Pipeline Balancing in CMP: "Abu Saad Papa" <abu_s...@research.
>Hi,
> I am trying to implement pipeline balancing in CMPFlex.OoO. For this I
>want to change the retire width of each core dynamically. I would like
>the retire width to be either 2, 4, or 6 according to the IPC value at
>that instant. I made some changes to uArchImpl.cpp file where I created a
>new function to update the value of options.retirewidth. But in the
>results file I am not getting any changes i.e the results with pipeline
>balancing and without pipeline balancing are the same.
>
> I have found that while updating options.retirewidth one more variable
>namely theRetireWidth in /CoreModel/construct.cpp is not getting updated
>and I have no idea how to change that variable from uArchImpl.cpp. Please
>help me out in implementing pipeline balancing in CMPFlex.OoO.
>
>Thanks.
>
>Bye,
> Abu Saad Papa

Reply via email to