# US 2019/0356730 A1 · Optimizing dynamical resource allocations using a data heat map in disaggregated data centers

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0356730 A1
- Document ID: US20190356730A1
- Status: Published application
- Kind: A1
- Application number: 15/982,589
- Filed: 2018-05-17
- Published: 2019-11-21
- Earliest claimed: 2018-05-17
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: John A. BIVENS; Ruchi MAHINDRU; Eugen SCHENFELD; Min LI; Valentina SALAPURA
- Web page: https://patentgrep.com/patent/US20190356730A1

## CPC

- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 67/568: Storing data temporarily at an intermediate stage, e.g. caching
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Embodiments for optimizing dynamic resource allocations in a disaggregated computing environment. A data heat map associated with a data access pattern of data elements associated with a workload is maintained. The workload is classified into one of a plurality of classes, each class characterized by the data access pattern associated with the workload. The workload is then assigned to a dynamically constructed disaggregated system optimized with resources according to the one of the plurality of classes the workload is classified into to increase efficiency during a performance of the workload.

## Claims

### Claim 1

A method for optimizing dynamic resource allocations in a disaggregated computing environment, by a processor device, comprising:
maintaining a data heat map associated with a data access pattern of data elements associated with a workload;
classifying the workload into one of a plurality of classes, each class characterized by the data access pattern associated with the workload; and
assigning the workload to a dynamically constructed disaggregated system optimized with resources according to the one of the plurality of classes the workload is classified into to increase efficiency during a performance of the workload.

### Claim 2 (depends on 1)

The method of claim 1, further including tracking the data access patterns of the data elements associated with the workload within the data heat map across predetermined windows of time.

### Claim 3 (depends on 2)

The method of claim 2, wherein the data heat map identifies at least one of a percentage and a quantity of data access requests commensurate with the data access pattern associated with the workload which were fulfilled by a respective set of the resources within the disaggregated system.

### Claim 4 (depends on 3)

The method of claim 3, wherein, according to the at least one of the percentage and the quantity of data access requests identified within the heat map, the workload is classified into the one of the plurality of classes.

### Claim 5 (depends on 4)

The method of claim 4, wherein the plurality of classes identified by the data heat map include:
a cache-friendly class wherein the data elements exhibit the data access pattern having cache hits over a first predetermined threshold;
a cache-needy class wherein the data elements exhibit the data access pattern having reoccurring access to less than a predetermined number of a set of data blocks outside a processor cache;
a memory-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within memory over a second predetermined threshold and at over a predetermined frequency; and
a storage-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within at least one storage device over a third predetermined threshold.

### Claim 6 (depends on 1)

The method of claim 1, further including modeling, by the data heat map, at least an access latency and a cost per bit versus a location of the data elements relative to certain ones of the resources within the overall disaggregated computing environment.

### Claim 7 (depends on 1)

The method of claim 1, further including updating the heat map according to a sampling algorithm of a sampling of the monitored data access patterns, the sampling algorithm set as a parameter configurable by a system administrator.

### Claim 8 (depends on 1)

The method of claim 1, wherein the data heat map is assembled from information provided from at least one of data request monitoring, and memory and storage link monitoring.

### Claim 9

A system for optimizing dynamic resource allocations in a disaggregated computing environment, the system comprising:
a processor device executing instructions stored in a memory device, wherein the processor device:
maintains a data heat map associated with a data access pattern of data elements associated with a workload;
classifies the workload into one of a plurality of classes, each class characterized by the data access pattern associated with the workload; and
assigns the workload to a dynamically constructed disaggregated system optimized with resources according to the one of the plurality of classes the workload is classified into to increase efficiency during a performance of the workload.

### Claim 10 (depends on 9)

The system of claim 9, wherein the processor device tracks the data access patterns of the data elements associated with the workload within the data heat map across predetermined windows of time.

### Claim 11 (depends on 10)

The system of claim 10, wherein the data heat map identifies at least one of a percentage and a quantity of data access requests commensurate with the data access pattern associated with the workload which were fulfilled by a respective set of the resources within the disaggregated system.

### Claim 12 (depends on 11)

The system of claim 11, wherein, according to the at least one of the percentage and the quantity of data access requests identified within the heat map, the workload is classified into the one of the plurality of classes.

### Claim 13 (depends on 12)

The system of claim 12, wherein the plurality of classes identified by the data heat map include:
a cache-friendly class wherein the data elements exhibit the data access pattern having cache hits over a first predetermined threshold;
a cache-needy class wherein the data elements exhibit the data access pattern having reoccurring access to less than a predetermined number of a set of data blocks outside a processor cache;
a memory-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within memory over a second predetermined threshold and at over a predetermined frequency; and
a storage-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within at least one storage device over a third predetermined threshold.

### Claim 14 (depends on 9)

The system of claim 9, wherein the processor device models, by the data heat map, at least an access latency and a cost per bit versus a location of the data elements relative to certain ones of the resources within the overall disaggregated computing environment.

### Claim 15 (depends on 9)

The system of claim 9, wherein the processor device updates the heat map according to a sampling algorithm of a sampling of the monitored data access patterns, the sampling algorithm set as a parameter configurable by a system administrator.

### Claim 16 (depends on 9)

The system of claim 9, wherein the data heat map is assembled from information provided from at least one of data request monitoring, and memory and storage link monitoring.

### Claim 17

A computer program product for optimizing dynamic resource allocations in a disaggregated computing environment, by a 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 portions comprising:
an executable portion that maintains a data heat map associated with a data access pattern of data elements associated with a workload;
an executable portion that classifies the workload into one of a plurality of classes, each class characterized by the data access pattern associated with the workload; and
an executable portion that assigns the workload to a dynamically constructed disaggregated system optimized with resources according to the one of the plurality of classes the workload is classified into to increase efficiency during a performance of the workload.

### Claim 18 (depends on 17)

The computer program product of claim 17, further including an executable portion that tracks the data access patterns of the data elements associated with the workload within the data heat map across predetermined windows of time.

### Claim 19 (depends on 18)

The computer program product of claim 18, wherein the data heat map identifies at least one of a percentage and a quantity of data access requests commensurate with the data access pattern associated with the workload which were fulfilled by a respective set of the resources within the disaggregated system.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein, according to the at least one of the percentage and the quantity of data access requests identified within the heat map, the workload is classified into the one of the plurality of classes.

### Claim 21 (depends on 20)

The computer program product of claim 20, wherein the plurality of classes identified by the data heat map include:
a cache-friendly class wherein the data elements exhibit the data access pattern having cache hits over a first predetermined threshold;
a cache-needy class wherein the data elements exhibit the data access pattern having reoccurring access to less than a predetermined number of a set of data blocks outside a processor cache;
a memory-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within memory over a second predetermined threshold and at over a predetermined frequency; and
a storage-friendly class wherein the data elements exhibit the data access pattern having the percentage of the data access requests for the data elements fulfilled within at least one storage device over a third predetermined threshold.

### Claim 22 (depends on 17)

The computer program product of claim 17, further including an executable portion that models, by the data heat map, at least an access latency and a cost per bit versus a location of the data elements relative to certain ones of the resources within the overall disaggregated computing environment.

### Claim 23 (depends on 17)

The computer program product of claim 17, further including an executable portion that updates the heat map according to a sampling algorithm of a sampling of the monitored data access patterns, the sampling algorithm set as a parameter configurable by a system administrator.

### Claim 24 (depends on 17)

The computer program product of claim 17, wherein the data heat map is assembled from information provided from at least one of data request monitoring, and memory and storage link monitoring.
