IOMMU PASID Granularity for Tenant QoS Resource Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional IOMMU technologies lack the capability to enforce Quality of Service (QoS) policies at a granular level, leading to resource contention and performance degradation among tenants in virtualization environments.
Innovation Solution
Implementing IOMMU resource control at a per Process Address Space Identifier (PASID) or per domain granularity, with mechanisms to enforce QoS policies, including threshold-based controls for IOTLB entries and page requests, to prevent overutilization and maintain equitable resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If IOMMU resources are shared among multiple tenants without granular control, then resource utilization efficiency is improved, but resource contention and performance degradation occur
Solution Approach 1:
The patent segments IOMMU resource control into two granularity levels: domain-level (coarse-grained) for overall resource allocation and PASID-level (fine-grained) for individual process control. This hierarchical segmentation enables both high resource utilization through sharing and performance stability through granular QoS enforcement, resolving the contradiction between efficiency and reliability.
2Device complexity
If QoS policies are enforced at coarse granularity (domain level), then implementation complexity is reduced, but resource allocation precision deteriorates
Solution Approach 1:
The control mechanism is segmented into two hierarchical levels: domain-level QoS policies for coarse-grained resource allocation and PASID-level QoS policies for fine-grained control. This segmentation enables the system to achieve both low implementation complexity at the domain level and high resource allocation precision at the PASID level, resolving the contradiction between complexity and precision.
3Manufacturing precision
If QoS policies are enforced at fine granularity (PASID level), then resource allocation precision is improved, but control mechanism complexity increases
Solution Approach 1:
The patent implements hierarchical segmentation where domain-level QoS policies handle coarse-grained resource allocation with simpler control logic, while PASID-level QoS policies provide fine-grained control only when needed. This segmentation reduces overall control mechanism complexity while maintaining high resource allocation precision through selective fine-grained enforcement.
Solution Approach 2:
The system establishes domain-level QoS policies in advance as a preliminary control layer, which handles most resource allocation scenarios with simple rules. This preliminary action reduces the need for complex fine-grained PASID-level control in routine operations, thereby reducing overall control mechanism complexity while maintaining precision when required.
4Productivity
If resource sharing is allowed without thresholds, then resource utilization is maximized, but overutilization and performance degradation occur
Solution Approach 1:
The patent implements feedback mechanisms through threshold-based controls at both domain and PASID levels. When resource usage reaches predefined thresholds, the system automatically enforces QoS policies to limit further usage, preventing overutilization and performance degradation. This feedback control enables the system to maintain high resource utilization while avoiding harmful overuse conditions.
Data Source
Figure 1~2A
Figure 2B
Figure 2C
AI summary
An embodiment of an integrated circuit may comprise memory to store respective resource control descriptors in correspondence with respective identifiers, and an input/output (IO) memory management unit (IOMMU) communicatively coupled to the memory, the IOMMU including circuitry to determine resource control information for an IO transaction based on a resource control descriptor stored in the memory that corresponds to an identifier associated with the IO transaction, and control utilization of one or more resources of the IOMMU based on the determined resource control information. Other embodiments are disclosed and claimed.