Workload optimization, scheduling, and placement for rack-scale architecture computing systems
US-2016359683-A1 · Dec 8, 2016 · US
US11474697B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11474697-B2 |
| Application number | US-201615155473-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 16, 2016 |
| Priority date | May 16, 2016 |
| Publication date | Oct 18, 2022 |
| Grant date | Oct 18, 2022 |
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.
Various embodiments for optimizing memory bandwidth in a disaggregated computing system, by a processor device, are provided. Respective memory devices are assigned to respective processor devices in the disaggregated computing system, the disaggregated computing system having at least a pool of the memory devices and a pool of the processor devices. An analytic function is performed on data resident in the pool of the memory devices using memory bandwidth not currently committed to a primary compute task.
Opening claim text (preview).
What is claimed is: 1. A method for optimizing memory bandwidth in a disaggregated computing system, by a processor device, comprising: assigning respective memory devices to respective processor devices from the disaggregated computing system, the disaggregated computing system having at least a pool of the memory devices and a pool of the processor devices, wherein the assigning includes allocating a first portion of a first memory device of the respective memory devices to a first tenant and allocating a second portion of the first memory device to a second tenant; selecting the first memory device of the pool of memory devices with which to perform an analytic function based on a statistical analysis indicating each of a cache hit rate of the first memory device is above a predetermined threshold and an average or probable usage of the first memory device is below a predetermined threshold; determining the first memory device has unused memory bandwidth otherwise allocated to at least one of a first primary compute task of the first tenant and a second primary compute task of the second tenant, wherein data currently residing in the first memory device is used in performing the at least one of the first primary compute task and the second primary compute task; responsive to determining the first memory device has unused memory bandwidth, determining, according to a type of the analytic function, whether predetermined criterion are met to satisfactorily execute the analytic function, wherein the predetermined criterion include identifying whether the analytic function requires a most recent and coherent copy of the data, whether the analytic function requires all workload data associated with at least one of the first primary compute task and the second primary compute task to which the analytic function corresponds, and whether the data currently residing in the first memory device represents all of the workload data; responsive to determining each of the predetermined criterion are met to satisfactorily execute the analytic function, determining a designated processor device of the respective processor devices, connected to the first memory device via an optical switch, to perform the analytic function; responsive to determining the designated processor device, opportunistically performing the analytic function of a first computational operation on the data resident in the first memory device using the unused memory bandwidth, wherein the analytic function is executed independently from the primary compute task and the second compute task to compute information associated with the data; and executing the analytic function on the data in the first memory device by the designated processor device. 2. The method of claim 1 , further including receiving user input for designating the designated processor device of the pool of processor devices to be used to perform computation of the analytic function; and using the designated processor device of the pool of processor devices to perform computation of the analytic function when the designated processor device is determined to be idle. 3. The method of claim 1 , further including receiving a user-entered data map containing a mapping of all the workload data between sections of the data resident in the first memory device and sections residing in a secondary storage, for performing the analytic function. 4. The method of claim 3 , further including using the user-entered data map to track and target coverage of the analytic function of all of the workload data associated with the at least one of the first primary compute task and the second primary compute task. 5. A system for optimizing memory bandwidth in a disaggregated computing system, the system comprising: at least one processor device, wherein the at least one processor device: assigns respective memory devices to respective processor devices from the disaggregated computing system, the disaggregated computing system having at least a pool of the memory devices and a pool of the processor devices, wherein the assigning includes allocating a first portion of a first memory device of the respective memory devices to a first tenant and allocating a second portion of the first memory device to a second tenant; selects the first memory device of the pool of memory devices with which to perform an analytic function based on a statistical analysis indicating each of a cache hit rate of the first memory device is above a predetermined threshold and an average or probable usage of the first memory device is below a predetermined threshold; determines the first memory device has unused memory bandwidth otherwise allocated to at least one of a first primary compute task of the first tenant and a second primary compute task of the second tenant, wherein data currently residing in the first memory device is used in performing the at least one of the first primary compute task and the second primary compute task; responsive to determining the first memory device has unused memory bandwidth, determines, according to a type of the analytic function, whether predetermined criterion are met to satisfactorily execute the analytic function, wherein the predetermined criterion include identifying whether the analytic function requires a most recent and coherent copy of the data, whether the analytic function requires all workload data associated with at least one of the first primary compute task and the second primary compute task to which the analytic function corresponds, and whether the data currently residing in the first memory device represents all of the workload data; responsive to determining each of the predetermined criterion are met to satisfactorily execute the analytic function, determines a designated processor device of the respective processor devices, connected to the first memory device via an optical switch, to perform the analytic function; responsive to determining the designated processor device, opportunistically performs the analytic function of a first computational operation on the data resident in the first memory device using the unused memory bandwidth, wherein the analytic function is executed independently from the primary compute task and the second compute task to compute information associated with the data; and executes the analytic function on the data in the first memory device by the designated processor device. 6. The system of claim 5 , wherein the at least one processor device receives user input for designating the designated processor device of the pool of processor devices to be used to perform computation of the analytic function; and uses the designated processor device of the pool of processor devices to perform computation of the analytic function when the designated processor device is determined to be idle. 7. The system of claim 5 , wherein the at least one processor device receives a user-entered data map containing a mapping of all the workload data between sections of the data resident in the first memory device and sections residing in a secondary storage, for performing the analytic function. 8. The system of claim 7 , wherein the at least one processor device uses the user-entered data map to track and target coverage of the analytic function of all of the workload data associated with the at least one of the first primary compute task and the second primary compute task. 9. A computer program product for optimizing memory bandwidth in a disaggregated computing system by at least one processor device, the computer program product embodied on a non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
by allocating resources to storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.