IP Library › Granted Patent US 10,929,118
Granted Patent B2
US 10,929,118 · App. 16/206,102 · Granted Feb 23, 2021

Cognitive microcode simulation, planning, and risk assessment

Inventors: Clea A. Zolotow (Key West, FL); Mihai Criveti (Blanchardstown, IE); Andrew P. Barnes (Greystones, IE); Gavin C. O'Reilly (Kilcoole, IE); Marci D. Formato (Clintondale, NY); Jørgen E. Floes (Stenløse, DK); Tedrick N. Northway (High Springs, FL)
Assignee: International Business Machines Corporation
G06F8/65G06F16/219
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 10,929,118
App. No.
16/206,102
Granted
Feb 23, 2021
Kind
B2
Abstract

A method includes creating a digital twin that represents a computing infrastructure, the digital twin representing all microcode versions present in components in the computing infrastructure. The method further includes creating a database of a plurality of upgrades including at least one microcode version update and a corresponding criticality of each of the plurality of updates and emulating a first deployment of a first set of one or more of the plurality of updates with the digital twin.

Claims (51)

1. A method comprising:

creating a digital twin that represents a computing infrastructure, the digital twin representing all microcode versions present in components in the computing infrastructure;

creating a database of a plurality of updates including at least one microcode version update and a corresponding criticality of each of the plurality of updates;

emulating a first deployment of a first set of one or more of the plurality of updates with the digital twin;

emulating a second deployment of a second set of one or more of the plurality of updates with the digital twin, wherein the second set has the first set of one or more of the plurality of updates in a different order than the first deployment;

analyzing the emulations of the first and the second deployments, wherein the analyzing the emulations comprise reviewing historical data of previous update deployments to the computing infrastructure and impacts of the previous update deployments on the computing infrastructure;

determining that the second deployment is better than the first deployment; and

deploying the second set to the computing infrastructure according to the second deployment.

2. The method of claim 1 , further comprising:

deploying the first set to the computing infrastructure according to the first deployment.

3. The method of claim 2 , further comprising:

recording the deployment of the first set to the computing infrastructure on a historical database.

4. The method of claim 2 , wherein the emulation of the first deployment is performed as training.

5. The method of claim 1 , wherein at least one of the plurality of updates is optional.

6. The method of claim 1 , further comprising:

emulating a third deployment of a third set of one or more of the plurality of updates with the digital twin, wherein an optional update that is present in the first set is absent from the third set.

7. The method of claim 1 , further comprising:

emulating a fourth deployment of a fourth set of one or more of the plurality of updates with the digital twin, wherein a first update in the first set is absent from the fourth set, and the fourth set includes an alternate update that is absent from the first set.

8. The method of claim 1 , further comprising: in response to analyzing the emulation of the first deployment, determining that the emulation of the first deployment was successful.

9. A computing environment comprising:

a computing infrastructure including microcode;

a digital twin that reflects the computing infrastructure and the microcode in real-time; and

a dashboard configured to display information about the computing infrastructure and the microcode in real-time, wherein:

the dashboard comprises a processor configured to run emulation software for simulating update deployments using the digital twin; and

the dashboard includes a dynamic visual representation of the computing infrastructure including a line of communication between components in the computing infrastructure;

wherein the emulation software running on the processor simulates the update deployments using the digital twin by:

creating a digital twin that represents a computing infrastructure, the digital twin representating all microcode versions present in components in the computing infrastructure;

creating a database of the plurality of updates including at least one microcode version update and a corresponding criticality of each set of the plurality of updates;

emulating, a first deployment of a first set of one or more of the plurality of updates with the digital twin;

emulating a second deployment of a second set of one or more of the plurality of updates with the digital twin, wherein the second set has the first set of one or more of the plurality of updates in a different order than the first deployment;

analyzing the emulations of the first and the second deployments, wherein the analyzing the emulations comprise reviewing historical data of previous update deployments to the computing infrastructure and impacts of the previous update deployments on the computing infrastructure;

determining that the second deployment is better than the first deployment; and

deploying the second set to the computing infrastructure according to the second deployment.

10. The computing environment of claim 9 , wherein the dashboard comprises:

a historical database that includes update tickets that reflect previous update deployments.

11. The computing environment of claim 9 , wherein the information about the computing infrastructure and microcode comprises:

information about the line of communication between components in the computing infrastructure that is displayed using colors.

12. The computing environment of claim 9 , wherein the information about the computing infrastructure and microcode comprises proposed update deployment information for a proposed update deployment.

13. The computing environment of claim 12 , wherein the proposed update deployment information includes

a risk factor regarding the proposed update deployment.

14. The computing environment of claim 13 , wherein the proposed update deployment information comprises the list of deferred updates that are absent from an order of deployment, and at least one of the deferred updates is an optional update.

15. The computing environment of claim 9 , wherein the information about the computing infrastructure and microcode is selected from the group consisting of: power and usage thereof, temperature and cooling, a risk level of performing the update deployment, an estimated full-time equivalent (FTE), an estimated change window time, a status/progress of an update, a best date/time to deploy the update, a rolling update path, a risk level of deferring the update, and the backout plan to rollback the update.

16. A computer program product for memory management, the computer program product comprising a computer readable storage medium, the computer readable storage medium having program instructions embodied therewith, the programs instructions configured, when executed by at least one computer, to cause the at least one computer to perform a method comprising:

creating a digital twin that represents a computing infrastructure, the digital twin representing all microcode versions present in components in the computing infrastructure;

creating a database of a plurality of updates including at least one microcode version update and a corresponding criticality of each of the plurality of updates;

emulating a first deployment of a first set of one or more of the plurality of updates with the digital twin;

emulating a second deployment of a second set of one or more of the plurality of updates with the digital twin, wherein the second set has the first set of one or more of the plurality of updates in a different order than the first deployment;

analyzing the emulations of the first and the second deployments, wherein the analyzing the emulations comprise reviewing historical data of previous update deployments of the computing infrastructure;

determining that the second deplyment is better than the first deployment; and

deploying the second set to the computing infrastructure according to the second deployment.

17. The computer program product of claim 16 , wherein at least one of the plurality of updates is optional.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2018
From: ZOLOTOW, CLEA A.; CRIVETI, MIHAI; BARNES, ANDREW P.; O'REILLY, GAVIN C.; FORMATO, MARCI D.; FLOES, JØRGEN E.; NORTHWAY, TEDRICK N.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 047641/0348 →
Continuity (1)
Related Publication 20200174769A1 · Jun 4, 2020