Handling tenant requests in a system that uses hardware acceleration components

US10198294B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10198294-B2
Application numberUS-201514717752-A
CountryUS
Kind codeB2
Filing dateMay 20, 2015
Priority dateApr 17, 2015
Publication dateFeb 5, 2019
Grant dateFeb 5, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A service mapping component (SMC) is described herein for processing requests by instances of tenant functionality that execute on software-driven host components (or some other components) in a data processing system. The SMC is configured to apply at least one rule to determine whether a service requested by an instance of tenant functionality is to be satisfied by at least one of: a local host component, a local hardware acceleration component which is locally coupled to the local host component, and/or at least one remote hardware acceleration component that is indirectly accessible to the local host component via the local hardware acceleration component. In performing its analysis, the SMC can take into account various factors, such as whether or not the service corresponds to a line-rate service, latency-related considerations, security-related considerations, and so on.

First claim

Opening claim text (preview).

What is claimed is: 1. A data processing system, comprising: a first server unit that includes a first processing unit configured to execute tenant functionality, a first hardware acceleration component, and a first local link configured to couple the first processing unit with the first hardware acceleration component; a second server unit that includes a second processing unit, a second hardware acceleration component, and a second local link configured to couple the second processing unit with the second hardware acceleration component; and a service mapping component provided on the first server unit, the second server unit, or a third server unit in the data processing system, the service mapping component being configured to, in different instances, cause different services requested by the tenant functionality on the first processing unit to be satisfied by the first processing unit, the first hardware acceleration component, the second processing unit, and the second hardware acceleration component, the service mapping component being further configured to: in a particular instance, cause a particular service requested on the first processing unit to be performed locally on the first hardware acceleration component based at least on a mapping consideration; and in another instance, partially reconfigure the second hardware acceleration component to perform another service responsive to another determination that the second hardware acceleration component is not already configured to perform the another service. 2. The data processing system of claim 1 , wherein the first processing unit and the second processing unit are central processing units configured to execute machine-readable instructions. 3. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, cause the first hardware acceleration component to perform a further service based at least on a further determination that the first hardware acceleration component is already configured to provide the further service. 4. The data processing system of claim 1 , the mapping consideration specifying that the particular service is a line-rate service performed by the first hardware acceleration component on information flowing at a prescribed rate. 5. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, cause the first hardware acceleration component to perform a further service based at least on a latency-related consideration pertaining to an amount of latency that will be incurred in interacting with the further service. 6. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, select the first hardware acceleration component or the second hardware acceleration component to perform a further service based at least on a service level requirement (SLA) associated with the further service. 7. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, select the first hardware acceleration component or the second hardware acceleration component to perform a further service based at least on a further determination that the further service is characterized by intermittent traffic. 8. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, select the first hardware acceleration component or the second hardware acceleration component to perform a further service based at least on a security-related consideration associated with the further service. 9. The data processing system of claim 1 , wherein the service mapping component is configured to, in a further instance, cause the first processing unit to perform a further service based at least on a further determination that neither the first hardware acceleration component nor the second hardware acceleration component can feasibly perform the further service. 10. The data processing system of claim 1 , wherein the service mapping component is provided on the second processing unit. 11. The data processing system of claim 10 , the partial reconfiguration comprising configuring a first domain of the second hardware acceleration component while leaving a second domain of the second hardware acceleration component unaltered, the service mapping component being further configured to cause the second hardware component to perform the another service after being partially reconfigured. 12. The data processing system of claim 1 , wherein the first hardware acceleration component and the second hardware acceleration component comprise field-programmable gate arrays, massively parallel processor arrays, graphics processing units, application-specific integrated circuits, or multiprocessor system-on-chip devices. 13. The data processing system of claim 12 , wherein the service mapping component is further configured to, in a further instance, instruct the first processing unit to perform a further service on behalf of an individual instance of tenant functionality executing on the first processing unit. 14. The data processing system of claim 12 , wherein the service mapping component is provided on the first processing unit. 15. A method comprising: receiving requests to execute different services in a data processing system comprising a first server unit and a second server unit, the first server unit having a first processing unit and a first hardware acceleration component, the second server unit having a second processing unit and a second hardware acceleration component; causing the different services be performed in different instances on the first processing unit and the first hardware acceleration component of the first server unit and on the second processing unit and the second hardware acceleration component of the second server unit; in a particular instance, causing a particular service to be performed locally on the first hardware acceleration component based at least on a mapping consideration; and in another instance, partially reconfiguring the second hardware acceleration component to perform another service responsive to another determination that the second hardware acceleration component is not already configured to perform the another service, and causing the second hardware acceleration component to perform the another service after being partially reconfigured. 16. The method of claim 15 , further comprising: receiving a particular request for the particular service from a virtual machine executing on the first processing unit, the particular request being received over a common network shared by the first processing unit, the first hardware acceleration component, the second processing unit, and the second hardware acceleration component; and in response to the request, sending an address of the first hardware acceleration component to the first server unit over the common network. 17. A system comprising: a first server unit that includes a first processing unit configured to execute tenant functionality that requests services, a first hardware acceleration component, and a first local link configured to couple the first processing unit with the first hardware acceleration component; a second server unit that includes a second processing unit, a second hardware acceleration component, and a second local link configured to couple the second processing unit with the second hardware acceleration component; a third server unit that includes a third

Assignees

Inventors

Classifications

  • G06F9/5044Primary

    considering hardware capabilities · CPC title

  • Network arrangements or protocols for supporting network services or applications (user-to-user messaging H04L51/00; network arrangements, protocols or services for supporting real-time applications in data packet communications networks H04L65/00) · CPC title

  • G06F9/5027Primary

    the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • for remote control or remote monitoring of applications · CPC title

  • Gate array · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10198294B2 cover?
A service mapping component (SMC) is described herein for processing requests by instances of tenant functionality that execute on software-driven host components (or some other components) in a data processing system. The SMC is configured to apply at least one rule to determine whether a service requested by an instance of tenant functionality is to be satisfied by at least one of: a local ho…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc, Microsoft Licensing Tech Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/5044. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 05 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).