This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Instruction Cache Throttle PMU event

I am looking for information on the Instruction Cache Throttle event on Cortex-A53. The docs just say "Instruction Cache Throttle occurred". Can anyone elaborate or point me to a more thorough explanation? Internet searching has not turned up anything.

In some cases, we see tens of thousands of these events after execution of a tight loop reading a 32KB array. The amount of these events strongly correlates with the execution time of the loop.

Thanks.

Parents
  • Hi ,

    Instruction cache throttle is an optimisation preventing fetches, which would likely be wasted. When you see the cache throttle events occurring it means the optimisation is actually taking place. This is good as it saves power and does not affect functionality.

    If you want to experiment, this optimisation can be enabled/disabled with CPUACTLR_EL1.IFUTHDIS.

    Best regards,

    Vincent.

Reply
  • Hi ,

    Instruction cache throttle is an optimisation preventing fetches, which would likely be wasted. When you see the cache throttle events occurring it means the optimisation is actually taking place. This is good as it saves power and does not affect functionality.

    If you want to experiment, this optimisation can be enabled/disabled with CPUACTLR_EL1.IFUTHDIS.

    Best regards,

    Vincent.

Children
No data