IP Library Granted Patent US 12675379
Granted Patent B1
US 12675379 · App. 18/640,668 · Granted Jul 7, 2026

Job rescheduling using a dynamic number of processors

Inventors: Abhijit Prakash Paithankar (San Jose, CA); Suryanarayan Ramamurthy (Sunnyvale, CA); Arpit Singh (Cupertino, CA)
Assignee: NVIDIA Corporation
G06F11/2028G06F11/1407
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 12675379
App. No.
18/640,668
Granted
Jul 7, 2026
Kind
B1
Abstract

Apparatuses, systems, and techniques to adjust a number of processors to be used by software. In at least one embodiment, as a result of a failure of one or more processors of a first group of processors, software performed by this first group of processors to be restarted, using a second smaller group of processors.

Claims (34)

1 . One or more processors, comprising:

circuitry to:

detect a failure of one or more processors of a first group of processors comprising a first number of processors performing a software program;

determine a second smaller number of processors to perform the software program, wherein a size of the second smaller number of processors is within a range defined by the software program;

determine whether a second smaller group of processors comprising the second smaller number of processors is available; and

cause the software program to be performed by the second smaller group of processors in response to determining that the second smaller group of processors is available.

2 . The one or more processors of claim 1 , wherein the circuitry is to determine the second smaller group of processors by excluding one or more failed processors within the first group of processors.

3 . The one or more processors of claim 1 , wherein the range defines a maximum number of processors to be used to perform the software program.

4 . The one or more processors of claim 1 , wherein the range defines a minimum number of processors to be used to perform the software program.

5 . The one or more processors of claim 1 , wherein the size of the second smaller group of processors is determined by decrementing a predetermined number from the first number of processors.

6 . The one or more processors of claim 1 , wherein the software program is restarted to be performed by the second smaller group of processors.

7 . The one or more processors of claim 1 , wherein the software program is reverted to a checkpoint to be performed by the second smaller group of processors.

8 . A method, comprising:

detecting a failure of one or more processors of a first group of processors comprising a first number of processors performing a software program;

determining a second smaller number of processors to perform the software program, wherein a size of the second smaller number of processors is within a range defined by the software program;

determining whether a second smaller group of processors comprising the second smaller number of processors is available; and

causing the software program to be performed by the second smaller group of processors in response to determining that the second smaller group of processors is available.

9 . The method of claim 8 , wherein determining the second smaller group of processors is to be performed to exclude one or more failed processors within the first group of processors.

10 . The method of claim 8 , wherein the range defines a maximum number of processors to be used to perform the software program.

11 . The method of claim 8 , wherein the range defines a minimum number of processors to be used to perform the software program.

12 . The method of claim 8 , wherein the size of the second smaller group of processors is determined by subtracting a predetermined number from the first number of processors.

13 . The method of claim 8 , wherein the software program is restarted to be performed by the second smaller group of processors.

14 . The method of claim 8 , wherein the software program is reverted to a checkpoint to be performed by the second smaller group of processors.

15 . A system, comprising:

one or more processors to:

detect a failure of one or more processors of a first group of processors comprising a first number of processors performing a software program;

determine a second smaller number of processors to perform the software program, wherein a size of the second smaller number of processors is within a range defined by the software program;

determine whether a second smaller group of processors comprising the second smaller number of processors is available; and

cause the software program to be performed by the second smaller group of processors in response to determining that the second smaller group of processors is available.

16 . The system of claim 15 , wherein the one or more processors are to determine the second smaller group of processors by excluding one or more failed processors within the first group of processors.

17 . The system of claim 15 , wherein the range defines a maximum number of processors to be used to perform the software program.

18 . The system of claim 15 , wherein the range defines a minimum number of processors to be used to perform the software program.

19 . The system of claim 15 , wherein the size of the second smaller group of processors is determined by subtracting a predetermined number from the first number of processors.

20 . The system of claim 15 , wherein the software program is restarted to be performed by the second smaller group of processors.