Agilex™ 5 ES Device Errata and User Guidelines

ID 825514
Date 12/09/2024
Public
Document Table of Contents

3.5.4. 1669310: Low performance for invalidation by IPA

Description

When the MMU-600 receives an invalidation by Stage 2 VMID and IPA, the performance of the invalidation is lower than expected. The operation walks every entry of the TCU walk caches. The impact is higher when the cache size is larger.

Conditions

Either of the following occurs:

  • The MMU-600 executes a CMD_TLBI_S2_IPA command through the Secure or Non-secure command queue.
  • A processor executes a TLBI IPAS2{L}E1IS or TLBI IPAS2{L}E1OS instruction and the MMU-600 receives processor broadcast DVM operations.

Impact

Arm expects Invalidate by IPA operations to be rare, so the impact is expected to be low.

If software invalidates large regions of IPA space using Invalidate by IPA operations instead of using a VMALL invalidate operation, then the performance might be noticeably impacted. For example, when a Virtual Machine is unmapped, software should use a VMALL invalidate operation.

There are no functional implications of this erratum and there is no impact on translation performance, or performance of any other invalidations.

Workaround

If required, you can use one of the following workarounds:

  • Software should ensure that when large regions of IPA space are invalidated, a single VMALL operation is used instead of invalidating each page individually.
  • If it is practical to use larger pages, for example 2MB blocks instead of 4KB pages, then this significantly reduces the number of invalidate operations that are performed and improves performance.

Category

Category C