PCIe Endpoint Sharing via Time Quanta
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
PCIe endpoint devices are underutilized, with average performance utilization varying between 10%-20% of their potential throughput, especially in storage area network environments, due to inefficient resource allocation and management.
Innovation Solution
A method and system for sharing a PCIe endpoint device among multiple host computers using time-based scheduling, where a management server allocates exclusive access quanta to each host computer, enabling efficient use of the endpoint device's processing power and reducing power and cost.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single PCIe endpoint device is shared among multiple host computers without time-based scheduling, then device accessibility is improved, but performance utilization deteriorates to 10%-20% of potential throughput
Solution Approach 1:
The patent implements time-based scheduling that divides access to the shared PCIe endpoint device into periodic time quanta, where each host computer is granted exclusive access during its allocated time slot. This periodic allocation of access rights resolves the contradiction by ensuring that when a host accesses the device, it has full performance capability, while still maintaining accessibility for multiple hosts over time.
Solution Approach 2:
The system dynamically allocates and switches access rights to the PCIe endpoint device between different host computers based on scheduled time quanta. The PCIe switch fabric dynamically reconfigures packet routing to redirect memory TLPs from different emulated endpoint devices to the physical shared endpoint device during respective time slots, thereby optimizing performance utilization while maintaining multi-host accessibility.
2Productivity
If multiple PCIe endpoint devices are provided for each host computer, then performance utilization is improved, but system cost and complexity deteriorate
Solution Approach 1:
The patent makes a single PCIe endpoint device universal by enabling it to serve multiple host computers through time-based sharing. The device functions as if it were dedicated to each host during its allocated time quantum, eliminating the need for multiple physical devices while maintaining full performance capability for each host.
Solution Approach 2:
The system creates emulated PCIe endpoint devices in the PCIe switch fabric for each host computer, which are virtual copies that interface with the physical shared endpoint device. These emulated devices allow each host to interact with the endpoint as if it had exclusive access, while the physical device is shared through time-multiplexed packet redirection.
3Ease of operation
If PCIe endpoint devices are shared without time-based scheduling, then resource allocation efficiency deteriorates, but system simplicity is improved
Solution Approach 1:
The patent introduces a management server and PCIe switch fabric as intermediary components that coordinate time-based sharing of the endpoint device. The management server allocates time quanta to different hosts and the PCIe switch fabric redirects memory TLPs accordingly, providing automated resource allocation that improves efficiency while maintaining operational simplicity through centralized control.
Data Source
AI summary
System and method for sharing a PCIe endpoint device with a plurality of host computers, by allocating a quantum of time to a host computer of a plurality of host computers coupled to a PCIe switch, wherein the quantum of time identifies a duration of time during which the host computer has exclusive access to a shareable PCIe endpoint device coupled to the PCIe switch. Requests from the host computer are transmitted to an emulated PCIe endpoint device of the PCIe switch during the quantum of time and the requests are then redirected from the emulated PCIe endpoint device to the shareable PCIe endpoint device during the quantum of time allocated to the host computer.


