Dynamic distributed make
First Claim
1. A method for optimizing resources utilized in compiling a computer program, the method comprising:
- receiving a maximum number of resources to allocate from a user;
compiling the computer program using said maximum number of resources to allocate indicated by said user; and
dynamically adjusting said maximum number of resources to allocate during said compiling if said resources are overloaded.
2 Assignments
0 Petitions
Accused Products
Abstract
A distributed make command is used when compiling a computer program in order to allow non-dependent processes in the compiling be performed in parallel, such as with different resources, in order to speed compile time. The distributed make command is typically executed by a user who also specifies a maximum number of resources to allocate to the compiling. The present invention dynamically adjusts this maximum number of resources to allocate if the resources become overloaded during the compiling, which has the effect of optimizing the efficiency of the compiling, either by reducing the number of resources utilized or by reducing the amount of time the compiling takes (or both).
19 Citations
36 Claims
-
1. A method for optimizing resources utilized in compiling a computer program, the method comprising:
-
receiving a maximum number of resources to allocate from a user;
compiling the computer program using said maximum number of resources to allocate indicated by said user; and
dynamically adjusting said maximum number of resources to allocate during said compiling if said resources are overloaded. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for optimizing resource utilized in compiling a computer program, the method comprising:
-
receiving a maximum number of resources to allocate from a user;
executing at least one process to compile said computer program, said executing further including for each process;
delaying executing said process if said maximum number of resources to allocate has been exceeded by a number of active processes;
dynamically adjusting said maximum number of resources to allocate if said resources are overloaded; and
executing said process. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for executing a distributed make command having a maximum number of resources to allocate as a parameter, the method comprising:
executing at least one process specified in a make file to compile said computer program, said executing further including for each process;
delaying executing said process if said maximum number of resources to allocate has been exceeded by a number of active processes;
dynamically adjusting said maximum number of resources to allocate if said resources are overloaded; and
executing said process. - View Dependent Claims (14, 15, 16, 17, 18)
-
19. An apparatus for optimizing resources utilized in compiling a computer program, the apparatus comprising:
-
a maximum number of resources receiver;
a computer program compiler coupled to said maximum number of resources receiver;
a maximum number of resources dynamic adjuster coupled to said computer program compiler.
-
-
20. An apparatus for optimizing resource utilized in compiling a computer program, the apparatus comprising:
-
a maximum number of resources receiver; and
a process executor coupled to said maximum number of resources receiver, said process executor including a process execution delayer and a maximum number of resources dynamic adjuster.
-
-
21. An apparatus for executing a distributed make command having a maximum number of resources to allocate as a parameter, the apparatus comprising:
a makefile process executor, said makefile process executor including;
a process execution delayer and a maximum number of resources dynamic adjuster.
-
22. An apparatus for optimizing resources utilized in compiling a computer program, the apparatus comprising:
-
means for receiving a maximum number of resources to allocate from a user;
means for compiling the computer program using said maximum number of resources to allocate indicated by said user; and
means for dynamically adjusting said maximum number of resources to allocate during said compiling if said resources are overloaded. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. An apparatus for optimizing resource utilized in compiling a computer program, the apparatus comprising:
-
means for receiving a maximum number of resources to allocate from a user;
means for executing at least one process to compile said computer program, said means for executing further including for each process;
means for delaying executing said process if said maximum number of resources to allocate has been exceeded by a number of active processes;
means for dynamically adjusting said maximum number of resources to allocate if said resources are overloaded; and
means for executing said process. - View Dependent Claims (29, 30, 31, 32, 33)
-
-
34. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for optimizing resources utilized in compiling a computer program, the method comprising:
-
receiving a maximum number of resources to allocate from a user;
compiling the computer program using said maximum number of resources to allocate indicated by said user; and
dynamically adjusting said maximum number of resources to allocate during said compiling if said resources are overloaded.
-
-
35. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for optimizing resource utilized in compiling a computer program, the method comprising:
-
receiving a maximum number of resources to allocate from a user;
executing at least one process to compile said computer program, said executing further including for each process;
delaying executing said process if said maximum number of resources to allocate has been exceeded by a number of active processes;
dynamically adjusting said maximum number of resources to allocate if said resources are overloaded; and
executing said process.
-
-
36. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for executing a distributed make command having a maximum number of resources to allocate as a parameter, the method comprising:
executing at least one process specified in a make file to compile said computer program, said executing further including for each process;
delaying executing said process if said maximum number of resources to allocate has been exceeded by a number of active processes;
dynamically adjusting said maximum number of resources to allocate if said resources are overloaded; and
executing said process.
Specification