IP Library Granted Patent US 12670031
Granted Patent B2
US 12670031 · App. 17/934,249 · Granted Jun 30, 2026

Efficient placement of serverless workloads on transient infrastructure on policy-driven re-location

Inventors: Enrico Regge (Stuttgart, DE); Michael Beck (Bad Teinach-Zavelstein, DE); Werner Schuetz (Nufringen, DE); Peter Gerstl (Holzgerlingen, DE); Simon Daniel Moser (Gärtringen, DE); Sugandha Agrawal (Stuttgart, DE)
Assignee: International Business Machines Corporation
G06F9/505G06F9/5038H04L67/568G06F2209/503G06F2209/506
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12670031
App. No.
17/934,249
Granted
Jun 30, 2026
Kind
B2
Abstract

A computer-implemented method for executing a serverless workload on a transient infrastructure is disclosed. The method comprises receiving a request for executing a workload and at least one policy, selecting an infrastructure component of the transient infrastructure for an execution of the workload, wherein the transient infrastructure is implemented utilizing a plurality of geographically distributed computing nodes, and executing the workload on the transient infrastructure. Furthermore, the method comprises upon receiving an interfering event during the execution of the workload causing a stop of the workload execution, freezing the execution of the workload, storing intermediate results and statuses of the workload execution in a cross-domain storage system, terminating the execution of the workload, and continuing the workload execution using the intermediate results and under a constraint defined by the at least one policy.

Claims (61)

1 . A computer implemented method (CIM) for use with a temporary infrastructure including a plurality of infrastructure components, the CIM comprising:

implementing the temporary infrastructure by a plurality of geographically distributed computing nodes respectively representing the plurality of infrastructure components;

maintaining a set of policies associated with geographical regions of the computing nodes;

receiving a request for executing a first workload;

receiving a policy definition including at least one policy associated with the first workload;

selecting a first computing node from the plurality of geographically distributed computing nodes for executing the first workload, wherein the first computing node is in a first geographical region, and wherein the selecting the first computing node comprises determining, based on the set of policies, that the at least one policy does not include a mandatory policy that cannot be fulfilled in the first geographical region;

executing the first workload on a first temporary infrastructure component corresponding to the first computing node;

during the execution of the first workload, detecting an occurrence of an interfering event that is causing a stop of the execution of the first workload;

responsive to the detection of the occurrence of the interfering event, freezing the execution of the first workload, storing a state of the first workload in a regional data store of the first geographical region, and replicating the state of the first workload to a cross-domain in-flight storage;

selecting, based on the policy definition and the set of policies, at least one additional computing node from the plurality of geographically distributed computing nodes, wherein the at least one additional computing node comprises a second computing node in a second geographical region; and

in response to determining that the second computing node is not in the first geographical region, pulling the state of the first workload from the cross-domain in-flight storage to resume the first workload on the second computing node.

2 . The CIM of claim 1 , wherein the storing comprises:

storing an execution status data set including information indicative of a plurality of intermediate results and statuses of the execution of the first workload.

3 . The CIM of claim 2 , further comprising:

subsequent to the pulling the state of the first workload, continuing execution of the first workload on the second computing node using the execution status data set and under a constraint defined by the at least one policy.

4 . The CIM of claim 1 , wherein the temporary infrastructure is implemented as part of a cloud computing environment.

5 . The CIM of claim 1 , further comprising continuing the execution of the first workload on a temporary infrastructure component corresponding to the second computing node.

6 . The CIM of claim 1 , wherein the at least one additional computing node further comprises a third computing node in the first geographical region.

7 . The CIM of claim 6 , further comprising, in response to determining that the third computing node is in the first geographical region, pulling the state of the first workload from the regional data store.

8 . The CIM of claim 1 , wherein the maintaining the set of policies comprises updating the set of policies in response to detecting policy updates in the geographical regions.

9 . The CIM of claim 8 , wherein the interfering event is a policy update in the first geographical region.

10 . The CIM of claim 1 , further comprising executing the workload in parallel on at least two computing nodes selected from the first computing node and the at least one additional computing node.

11 . The CIM of claim 1 , wherein the interfering event is a price change for at least one of the geographically distributed computing nodes.

12 . A computer program product (CPP) for use with a first workload and a temporary infrastructure including a plurality of infrastructure components, the CPP comprising:

at least one storage device; and

computer code stored collectively in the at least one storage device, with the computer code including data and instructions to cause one or more processors to perform operations comprising:

implementing the temporary infrastructure by a plurality of geographically distributed computing nodes respectively representing the plurality of infrastructure components;

maintaining a set of policies associated with geographical regions of the computing nodes;

receiving a request for executing the first workload;

receiving a policy definition including at least one policy associated with the first workload;

selecting a first computing node from the plurality of geographically distributed computing nodes for executing the first workload, wherein the first computing node is in a first geographical region, and wherein the selecting the first computing node comprises determining that the at least one policy does not include a mandatory policy that cannot be fulfilled in the first geographical region;

executing the first workload on a first temporary infrastructure component corresponding to the first computing node;

during the execution of the first workload, detecting an occurrence of an interfering event that is causing a stop of the execution of the first workload;

responsive to the detection of the occurrence of the interfering event, freezing the execution of the first workload, storing a state of the first workload in a regional data store of the first geographical region, and replicating the state of the first workload to an in-flight storage that is accessible to more than one geographical region;

selecting, based on the policy definition and the set of policies, at least one additional computing node from the plurality of geographically distributed computing nodes, wherein the at least one additional computing node comprises a second computing node from the plurality of geographically distributed computing nodes, wherein the second computing node is in a second geographical region; and

in response to determining that the second computing node is not in the first geographical region, pulling the state of the first workload from the in-flight storage that is accessible to more than one geographical region to resume the first workload on the second computing node.

13 . The CPP of claim 12 , wherein the storing the state comprises:

storing an execution status data set including information indicative of a plurality of intermediate results and statuses of the execution of the first workload.

14 . The CPP of claim 13 , wherein the computer code further includes instructions for causing the one or more processors to perform operations comprising:

subsequent to the pulling the state of the first workload, continuing execution of the first workload on the second computing node using the execution status data set and under a constraint defined by the at least one policy.

15 . The CPP of claim 12 , wherein the temporary infrastructure is implemented as part of a cloud computing environment.

16 . A computer system (CS) for use with a first workload and a temporary infrastructure including a plurality of infrastructure components, the CS comprising:

one or more processors;

at least one storage device; and

computer code stored collectively in the at least one storage device, with the computer code including data and instructions to cause the one or more processors to perform operations comprising:

implementing the temporary infrastructure by a plurality of geographically distributed computing nodes respectively representing the plurality of infrastructure components;

maintaining a set of policies associated with geographical regions of the computing nodes;

receiving a request for executing the first workload;

receiving a policy definition including at least one policy associated with the first workload;

selecting a first computing node from the plurality of geographically distributed computing nodes for executing the first workload, wherein the first computing node is in a first geographical region, and wherein the selecting the first computing node comprises determining that the at least one policy does not include a mandatory policy that cannot be fulfilled in the first geographical region;

executing the first workload on a first temporary infrastructure component corresponding to the first computing node;

during the execution of the first workload, detecting an occurrence of an interfering event that is causing a stop of the execution of the first workload;

responsive to the detection of the occurrence of the interfering event, freezing the execution of the first workload, storing a state of the first workload in a regional data store of the first geographical region, and replicating the state of the first workload to an in-flight storage that is accessible to more than one geographical region;

selecting, based on the policy definition and the set of policies, at least one additional computing node from the plurality of geographically distributed computing nodes, wherein the at least one additional computing node comprises a second computing node in a second geographical region; and

in response to determining that the second computing node is not in the first geographical region, sending pulling the state of the first workload from the in-flight storage that is accessible to more than one geographical region to resume the first workload on the second computing node.

17 . The CS of claim 16 , wherein the storing the state comprises:

storing an execution status data set including information indicative of a plurality of intermediate results and statuses of the execution of the first workload.

18 . The CS of claim 17 , wherein the computer code further includes instructions for causing the one or more processors to perform operations comprising:

subsequent to the pulling the state of the first workload, continuing execution of the first workload on the second computing node using the execution status data set and under a constraint defined by the at least one policy.

19 . The CS of claim 16 , wherein the temporary infrastructure is implemented as part of a cloud computing environment.

20 . The CS of claim 16 , further comprising, in response to determining that the at least one additional computing node further comprises a third computing node in the first geographical region, pulling the state of the first workload from the regional data store.