METHODS AND SYSTEMS FOR OPTIMIZING EXECUTION OF A PROGRAM IN A PARALLEL PROCESSING ENVIRONMENT
First Claim
1. An automated method of optimizing execution of a program in a parallel processing environment, the program adapted to execute in data memory and instruction memory, the method comprising:
- (a) receiving, at an optimizer, the program;
(b) compiling the program upon instruction by the optimizer;
(c) executing the program upon instruction by the optimizer;
(d) the optimizer observing the execution of the program and identifying a subset of instructions that execute most often;
(e) the optimizer identifying groups of instructions associated with the subset of instructions that execute most often, wherein the groups of instructions include the subset of instructions that execute most often;
(f) the optimizer recompiling the program and storing the identified groups of instructions in instruction memory, and storing remaining portions of the program in the data memory,wherein the instruction memory has a higher access rate and smaller capacity than the data memory, wherein subsequent execution of the program occurs using the recompiled program.
1 Assignment
0 Petitions
Accused Products
Abstract
An automated method of optimizing execution of a program in a parallel processing environment is described. The program is adapted to execute in data memory and instruction memory. An optimizer receives the program to be optimized. The optimizer instructs the program to be compiled and executed. The optimizer observes execution of the program and identifies a subset of instructions that execute most often. The optimizer also identifies groups of instructions associated with the subset of instructions that execute most often. The identified groups of instructions include the identified subset of instructions that execute most often. The optimizer recompiles the program and stores the identified groups of instructions in instruction memory. The remaining instructions portions of the program are stored in the data memory. The instruction memory has a higher access rate and smaller capacity than the data memory. Once recompiled, subsequent execution of the program occurs using the recompiled program.
-
Citations
2 Claims
-
1. An automated method of optimizing execution of a program in a parallel processing environment, the program adapted to execute in data memory and instruction memory, the method comprising:
-
(a) receiving, at an optimizer, the program; (b) compiling the program upon instruction by the optimizer; (c) executing the program upon instruction by the optimizer; (d) the optimizer observing the execution of the program and identifying a subset of instructions that execute most often; (e) the optimizer identifying groups of instructions associated with the subset of instructions that execute most often, wherein the groups of instructions include the subset of instructions that execute most often; (f) the optimizer recompiling the program and storing the identified groups of instructions in instruction memory, and storing remaining portions of the program in the data memory, wherein the instruction memory has a higher access rate and smaller capacity than the data memory, wherein subsequent execution of the program occurs using the recompiled program. - View Dependent Claims (2)
-
Specification