Enqueue Submission Model for QoS Rate Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems fail to ensure fair sharing of resources among a large number of clients, such as applications, drivers, and virtual machines, due to limitations in tracking quality of service (QoS) information, particularly in virtualized environments where privileged and unprivileged clients have differing access levels.

Innovation Solution

The implementation of an enqueue submission model that carries QoS information along with command data, using a Process Address Space Identifier (PASID) to enable QoS-based handling and rate control at a granular level, allowing for fair sharing of hardware resources among multiple clients without increasing complexity on the device side.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a single hardware interface is shared with up to one million applications/drivers/VMs/containers, then the system can support a large number of clients, but it becomes impossible for devices to store/track QoS information for such a large number of clients

Engineering Contradiction:
Improvenumber of clientsVSAvoidQoS tracking complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts QoS tracking functionality from the device side and relocates it to the processor side. The processor maintains QoS information in PASID tables and enforcement state, while the device only needs to receive QoS parameters with work submissions and enforce them locally. This extraction resolves the contradiction by enabling support for one million clients without requiring the device to store/track QoS information for all of them.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces QoS parameters as an intermediary mechanism carried within work submission packets. These parameters include QoS class, priority, and rate control information that are embedded in the work queue entries. This intermediary allows the system to convey QoS information efficiently without requiring complex device-side tracking structures for each client.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If unlimited portals are kept in control of host/root partition, then privileged clients can access resources, but there is no way to ensure fair sharing among different VMs/containers

Engineering Contradiction:
Improveprivileged client accessVSAvoidfair share allocation
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent applies local quality by differentiating QoS handling based on client type and portal privileges. Ring-0 clients with unlimited portals receive appropriate QoS enforcement, while Ring-3 clients in virtualized environments get fair share allocation through the hypervisor-managed PASID tables. Each client type receives customized QoS treatment according to its specific needs and privileges.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements preliminary action by pre-configuring QoS parameters and rate control limits in the PASID tables before work submissions occur. The hypervisor or operating system sets up QoS class, priority, and rate control information in advance for each PASID, enabling fair share allocation to be automatically enforced without real-time negotiation or complex runtime decisions.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If devices provide at most two levels or classes of service, then device complexity is reduced, but it cannot ensure dedicated quota for privileged clients and fair share among unprivileged clients simultaneously

Engineering Contradiction:
Improveservice class structureVSAvoidQoS guarantee
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments QoS enforcement into two distinct layers: a simple two-class service structure at the device level (primitives vs. non-primitives) and a complex multi-level QoS system at the processor level through PASID tables. This segmentation allows the device to maintain low complexity while the processor handles sophisticated QoS guarantees for both privileged and unprivileged clients simultaneously.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11907744B2System, apparatus and method for enabling fine-grain quality of service or rate control for work submissions
Publication Date: 2024.02.20 INTEL CORP
  • US11907744B2 patent drawing
  • US11907744B2 patent drawing
  • US11907744B2 patent drawing

AI summary

In one embodiment, a processor comprises: a first configuration register to store quality of service (QoS) information for a process address space identifier (PASID) value associated with a first process; and an execution circuit coupled to the first configuration register, where the execution circuit, in response to a first instruction, is to obtain command data from a first location identified in a source operand of the first instruction, insert the QoS information and the PASID value into the command data, and send a request comprising the command data to a device coupled to the processor, to enable the device to use the QoS information of a plurality of requests to manage sharing between a plurality of processes. Other embodiments are described and claimed.