Thread and data assignment in multi-core processors
US-2016253212-A1 · Sep 1, 2016 · US
US2017090987A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2017090987-A1 |
| Application number | US-201514866869-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 26, 2015 |
| Priority date | Sep 26, 2015 |
| Publication date | Mar 30, 2017 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In one embodiment, a system comprises platform logic comprising a plurality of processor cores and resource allocation logic. The resource allocation logic may receive a processing request and direct the processing request to a processor core of the plurality of processor cores, wherein the processor core is selected based at least in part on telemetry data associated with the platform logic, the telemetry data indicating a topology of at least a portion of the platform logic.
Opening claim text (preview).
1 . A system comprising: platform logic comprising a plurality of processor cores; and resource allocation logic to: receive a processing request; and direct the processing request to a processor core of the plurality of processor cores, wherein the processor core is selected based at least in part on telemetry data associated with the platform logic, the telemetry data indicating a topology of at least a portion of the platform logic. 2 . The system of claim 1 , further comprising an I/O device driver comprising at least a portion of the resource allocation logic, and wherein directing the processing request to the processor core comprises sending an interrupt by the I/O device driver to the processor core. 3 . The system of claim 1 , further comprising an I/O device driver comprising at least a portion of the resource allocation logic, the I/O device driver to run benchmark tests on the platform logic to collect the telemetry data. 4 . The system of claim 1 , wherein the telemetry data indicating the topology of at least a portion of the platform logic comprises an indication of a bandwidth or a latency from the processor core to a memory of the platform logic. 5 . The system of claim 1 , wherein the telemetry data indicating the topology of at least a portion of the platform logic comprises an indication of a bandwidth or a latency from the processor core to another processor core of the plurality of processor cores. 6 . The system of claim 1 , wherein the telemetry data indicating the topology of at least a portion of the platform logic comprises an indication of a bandwidth or a latency from the processor core to an I/O device of the platform logic. 7 . The system of claim 1 , wherein the telemetry data further indicates current bandwidths used by the processor cores. 8 . The system of claim 7 , wherein the resource allocation logic is to select the processor core based on the processor core having a highest expected performance for the processing request of the plurality of processors when an aggregate used bandwidth of the plurality of processors is below a particular threshold. 9 . The system of claim 7 , wherein the resource allocation logic is to select the processor core based on an optimization of overall bandwidth of the plurality of processors when an aggregate used bandwidth of the plurality of processors is above a particular threshold. 10 . The system of claim 1 , wherein the processing request comprises a request to instantiate an I/O device driver. 11 . The system of claim 1 , wherein the processing request comprises a request to instantiate a virtual machine. 12 . The system of claim 1 , wherein the processing request is associated with a service function chain or a virtual network function running on the platform logic. 13 . The system of claim 1 , further comprising a manageability engine to collect additional telemetry data associated with the platform logic in a manner that is out-of-band with respect to the plurality of processor cores. 14 . The system of claim 13 , wherein the manageability engine is further to send the additional telemetry data to a datacenter management platform that receives telemetry data from a plurality of distinct platforms, each platform comprising at least one processor core. 15 . The system of claim 13 , wherein the manageability engine is further to run benchmark tests on the platform logic to collect the telemetry data indicating the topology of at least a portion of the platform logic. 16 . The system of claim 1 , wherein a hypervisor or operating system executed by the platform logic is to run benchmark tests on the platform logic to collect the telemetry data indicating the topology of at least a portion of the platform logic. 17 . The system of claim 1 , further comprising a hypervisor comprising the resource allocation logic, the resource allocation logic of the hypervisor to select the processor core based further on one or more performance requirements associated with the processing request. 18 . A method comprising: receiving, at an input/output device driver, a processing request; selecting, by the input/output device driver, a processor core of a plurality of processor cores based at least in part on telemetry data associated with the processor cores; and sending, by the input/output device driver, an interrupt signal associated with the processing request to the selected processor core. 19 . A system comprising: a plurality of platforms, a platform comprising a plurality of processor cores; and a datacenter management platform coupled to the plurality of platforms through a network, the datacenter management platform to: receive telemetry data from the plurality of platforms, the telemetry data indicating performance metrics associated with the processor cores of each of the platforms; receive an indication of at least one workload to be executed by a platform of the plurality of platforms; select a platform of the plurality of platforms based on the telemetry data received from the platforms; and direct the placement of the workload onto the selected platform. 20 . The system of claim 19 , wherein the workload comprises a service function chain or a virtual network function and directing the placement of the workload onto the selected platform includes migrating the service function chain or virtual network function from a first platform of the plurality of platforms to the selected platform. 21 . At least one machine readable storage medium having instructions stored thereon, the instructions when executed by a machine to cause the machine to: receive, at an input/output device driver, a processing request; select, by the input/output device driver, a processor core of a plurality of processor cores based at least in part on telemetry data associated with the processor cores; and send, by the input/output device driver, an interrupt signal associated with the processing request to the selected processor core. 22 . The medium of claim 21 , wherein the telemetry data comprises an indication of a topology of at least a portion of the processor cores. 23 . The medium of claim 21 , wherein the telemetry data comprises an indication of a bandwidth or a latency from the processor core to another processor core of the plurality of processor cores. 24 . The medium of claim 21 , wherein the telemetry data comprises an indication of a bandwidth or a latency from the processor core to an I/O device. 25 . The medium of claim 21 , wherein the instructions when executed are further to cause the machine to run benchmark tests on the plurality of processor cores to collect the telemetry data.
Proximity · CPC title
with centralised access control · CPC title
the resources being hardware resources other than CPUs, Servers and Terminals · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.