Dynamically assigning user devices to workload clusters
AssigneeSap SE
InventorsJannick Stephan Fahlbusch, Florian Geckeler
Life of this patent
Estimating the term…
Abstract
Systems and methods described herein relate to the assignment of user devices to workload clusters. Resource utilization on a plurality of user devices is monitored. A device agent on each user device may be used to monitor the resource utilization. A workload execution request identifies resource requirements of a cluster workload. The workload execution request is assigned to a cluster based on the resource requirements of the cluster workload and the resource utilization on the plurality of user devices. The cluster comprises the plurality of user devices. The workload execution request is caused to be executed on the cluster. Each user device executes user workloads and a respective portion of the cluster workload.
Claims20
A system comprising:
- at least one memory that stores instructions;
- and
- one or more processors configured by the instructions to execute operations comprising:
- receiving, from a device agent executing on each of a plurality of user devices, resource utilization data indicating excess available resources on the user device that the user device can contribute to execute cluster workloads on the user device;
- receiving a workload execution request that identifies resource requirements of a cluster workload;
- dynamically configuring a cluster comprising the plurality of user devices based on the workload execution request and the resource utilization data of the plurality of user devices;
- transmitting, to the device agent executing on each of the plurality of user devices, an instruction to allocate a first portion of resources from the excess available resources on the user device to the cluster to execute a respective portion of the cluster workload, and a separate second portion of resources on the user device to execute respective user workloads that differ from the cluster workload;
- and
- causing the workload execution request to be executed on the cluster, wherein each of the plurality of user devices simultaneously executes the respective user workloads of the user device in a user environment on the user device using the second portion of resources on the user device and the respective portion of the cluster workload in a separate cluster environment on the user device using the first portion of resources from the excess available resources on the user device.
A method comprising:
- receiving, from a device agent executing on each of a plurality of user devices, resource utilization data indicating excess available resources on the user device that the user device can contribute to execute cluster workloads on the user device;
- receiving a workload execution request that identifies resource requirements of a cluster workload;
- dynamically configuring a cluster comprising the plurality of user devices based on the workload execution request and the resource utilization data of the plurality of user devices;
- transmitting, to the device agent executing on each of the plurality of user devices, an instruction to allocate a first portion of resources from the excess available resources on the user device to the cluster to execute a respective portion of the cluster workload, and a separate second portion of resources on the user device to execute respective user workloads that differ from the cluster workload;
- and
- causing the workload execution request to be executed on the cluster, wherein each of the plurality of user devices simultaneously executes the respective user workloads of the user device in a user environment on the user device using the second portion of resources on the user device and the respective portion of the cluster workload in a separate cluster environment on the user device using the first portion of resources from the excess available resources on the user device.
A non-transitory computer-readable medium that stores instructions that, when executed by one or more processors, cause the one or more processors to execute operations comprising:
- receiving, from a device agent executing on each of a plurality of user devices, resource utilization data indicating excess available resources on the user device that the user device can contribute to execute cluster workloads on the user device;
- receiving a workload execution request that identifies resource requirements of a cluster workload;
- dynamically configuring a cluster comprising the plurality of user devices based on the workload execution request and the resource utilization data of the plurality of user devices;
- transmitting, to the device agent executing on each of the plurality of user devices, an instruction to allocate a first portion of resources from the excess available resources on the user device to the cluster to execute a respective portion of the cluster workload, and a separate second portion of resources on the user device to execute respective user workloads that differ from the cluster workload;
- and
- causing the workload execution request to be executed on the cluster, wherein each of the plurality of user devices simultaneously executes the respective user workloads of the user device in a user environment on the user device using the second portion of resources on the user device and the respective portion of the cluster workload in a separate cluster environment on the user device using the first portion of resources from the excess available resources on the user device.
Dependencies are inferred from the claim text.