PROXY QUEUE PAIR FOR OFFLOADING
First Claim
1. A method for offloading work requests of a queue pair (QP), comprising:
- receiving, by the HCA, a first work request identifying the QP, wherein the QP is associated with an application executing on a host connected to the HCA;
making a first determination that the QP is a proxy QP;
offloading, by the HCA, the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion;
receiving, by the HCA, a second work request identifying the QP;
processing, by the HCA, the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion;
redirecting a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination; and
processing, by the proxy CPU, the first completion and the second completion in order.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for offloading includes a host channel adapter (HCA) receiving a first work request identifying a queue pair (QP), making a first determination that the QP is a proxy QP, and offloading the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion. The HCA further receives a second work request identifying the QP, processes the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion. The HCA redirects a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination. The proxy CPU processes the first completion and the second completion in order.
30 Citations
20 Claims
-
1. A method for offloading work requests of a queue pair (QP), comprising:
-
receiving, by the HCA, a first work request identifying the QP, wherein the QP is associated with an application executing on a host connected to the HCA; making a first determination that the QP is a proxy QP; offloading, by the HCA, the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion; receiving, by the HCA, a second work request identifying the QP; processing, by the HCA, the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion; redirecting a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination; and processing, by the proxy CPU, the first completion and the second completion in order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A host channel adapter (HCA) for offloading, comprising:
-
a proxy central processing unit; a receive module for; receiving a first work request identifying a first queue pair (QP), wherein the first QP is associated with an application executing on a host connected to the HCA; making a first determination that the first QP is a proxy QP; redirecting the first work request to the proxy CPU on the HCA based on the first determination and based on the first work request satisfying a filter criterion; receiving a second work request identifying the first QP; and processing the second work request without redirecting to the proxy CPU based on the first determination and based on the first work request failing to satisfy the filter criterion; a completion module for; generating a first completion for the first work request; and generating a second completion for the second work request; and a descriptor fetch module for; redirecting the first completion and the second completion to the proxy CPU based on the first determination, wherein the proxy CPU processes the first work request, the first completion, and the second completion. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A system comprising:
-
a host comprising an application; and a host channel adapter (HCA), connected to the host, for; receiving a first work request identifying a queue pair (QP), wherein the QP is associated with the application; making a first determination that the QP is a proxy QP; offloading the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion; receiving a second work request identifying the QP; processing the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion; redirecting a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination; and processing, by the proxy CPU, the first completion and the second completion in order. - View Dependent Claims (19, 20)
-
Specification