5.1.3.5 About XRMEM Cache Management in IORM Plans

I/O Resource Management (IORM) can provide predictable performance by guaranteeing space in Exadata RDMA Memory Cache (XRMEM cache).

With multiple clusters, databases, and pluggable databases (PDBs) sharing the storage, XRMEM cache space becomes a critical resource that requires management. IORM can reserve space for critical clusters, databases or PDBs while preventing less important or rogue entities from consuming the entire XRMEM cache.

You can use the following attributes to set limits for XRMEM cache resources. A hard limit means that the specified limit cannot be exceeded even when the cache is not full. A soft limit means that the specified limit can be exceeded if there are available resources.

  • xrmemCacheMin — Specifies the minimum amount of XRMEM cache space that is guaranteed for the specified database in an interdatabase IORM plan directive. This is a hard limit that guarantees space, even if the cached data is cold.

    Starting with Oracle Exadata System Software release 26.1.0, xrmemCacheMin is also available as an attribute in a cluster plan directive, where it specifies the minimum amount of XRMEM cache space that is guaranteed for the corresponding cluster.

    Because xrmemCacheMin is a guaranteed reservation, the sum of xrmemCacheMin across all directives should be less than the size of the XRMEM cache to ensure that each entity gets its respective quota.

  • xrmemCacheSize — Specifies the hard maximum amount of XRMEM cache space that is available to the database in an interdatabase IORM plan directive. The xrmemCacheSize value cannot be exceeded at any time.

    Starting with Oracle Exadata System Software release 26.1.0, xrmemCacheSize is also available as an attribute in a cluster plan directive, where it specifies the hard maximum amount of XRMEM cache space that is available to the corresponding cluster.

    If you set xrmemCacheSize to a value that is lower than the current space occupied by the entity, then excess data is proactively cleared from the cache.

    An xrmemCacheSize setting is not a guaranteed reservation if the sum of the xrmemCacheSize across all directives is more than the size of the XRMEM cache. In this case, you can also specify xrmemCacheMin to define a guaranteed minimum quota.

    Note:

    On Exadata X8M and X9M storage server models only, you can interchangeably use attribute names starting with pmem instead of xrmem. For example, pmemCacheMin instead of xrmemCacheMin. However, you cannot have a mixture of PMEM and XRMEM attributes in the IORM plan.

  • xrmemCacheLimit — Specifies the soft maximum amount of XRMEM cache space that is available to the database in an interdatabase IORM plan directive. If the XRMEM cache is not full, a database can exceed the xrmemCacheLimit value.

    Note:

    Starting with Oracle Exadata System Software release 26.1.0, the xrmemCacheLimit attribute is deprecated, and a warning message is issued when xrmemCacheLimit is set.

Within each database, you can manage the minimum and maximum quotas for PDBs with Oracle Database Resource Manager, in a container database (CDB) resource plan using the memory_min and memory_limit directives.

Cache limits in an interdatabase IORM plan directive constrain the settings in any corresponding CDB plan. Consequently, if an interdatabase IORM plan directive specifies xrmemCacheMin and xrmemCacheSize settings for a database, then the PDB-specific memory_min quotas in the CDB plan represent fractions of the xrmemCacheMin setting, and the PDB-specific memory_limit values represent fractions of the xrmemCacheSize.

However, if the interdatabase IORM plan directive specifies xrmemCacheSize without xrmemCacheMin, then the PDB-specific memory_min settings are ignored while the memory_limit settings continue to represent fractions of the xrmemCacheSize.