Optimizing just-in-time compiling for a java application executing on a compute node
First Claim
Patent Images
1. A compute node capable of optimizing just-in-time (‘
- JIT’
) compiling for a software application, the compute node having installed upon it a software Virtual Machine (‘
VM’
) capable of supporting the software application, the compute node comprising a computer processor and computer memory operatively coupled to the computer processor, the computer memory for the compute node having disposed within it computer program instructions that when executed by the computer processor cause the computer node to carry out the steps of;
identifying a plurality of portions within the software application;
for each portion of the plurality of portions, assigning, by an application manager, one of a plurality of a JIT levels to the portion of the software application, wherein the plurality of JIT levels excludes a level in which no JIT compiling is carried out, including;
establishing the JIT level for the portion of the software application in dependence upon both a historic JIT profile for the portion of the software application specifying, for each previous execution, one of a plurality of JIT levels previously used when jitting the portion of the software application and previous execution performance of the portion of the software application including a previous performance value and a number of times the particular portion was invoked;
wherein each portion of the plurality of portions of the application is assigned a different JIT level; and
jitting, by the VM installed on the compute node, the portion of the software application in dependence upon the JIT level assigned to that portion of the software application.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and products are disclosed for optimizing just-in-time (‘JIT’) compiling for a Java application executing on a compute node, the compute node having installed upon it a Java Virtual Machine (‘JVM’) capable of supporting the Java application, that include: identifying, by an application manager, a particular portion of the Java application; assigning, by the application manager, a JIT level to the particular portion of the Java application; and jitting, by the JVM installed on the compute node, the particular portion of the Java application in dependence upon the JIT level assigned to that particular portion of the Java application.
48 Citations
10 Claims
-
1. A compute node capable of optimizing just-in-time (‘
- JIT’
) compiling for a software application, the compute node having installed upon it a software Virtual Machine (‘
VM’
) capable of supporting the software application, the compute node comprising a computer processor and computer memory operatively coupled to the computer processor, the computer memory for the compute node having disposed within it computer program instructions that when executed by the computer processor cause the computer node to carry out the steps of;identifying a plurality of portions within the software application; for each portion of the plurality of portions, assigning, by an application manager, one of a plurality of a JIT levels to the portion of the software application, wherein the plurality of JIT levels excludes a level in which no JIT compiling is carried out, including; establishing the JIT level for the portion of the software application in dependence upon both a historic JIT profile for the portion of the software application specifying, for each previous execution, one of a plurality of JIT levels previously used when jitting the portion of the software application and previous execution performance of the portion of the software application including a previous performance value and a number of times the particular portion was invoked;
wherein each portion of the plurality of portions of the application is assigned a different JIT level; andjitting, by the VM installed on the compute node, the portion of the software application in dependence upon the JIT level assigned to that portion of the software application. - View Dependent Claims (2, 3, 4, 5)
- JIT’
-
6. A computer program product for optimizing just-in-time (‘
- JIT’
) compiling for a software application executing on a compute node, the compute node having installed upon it a software Virtual Machine (‘
VM’
) capable of supporting the software application, the computer program product including a computer readable storage medium, wherein the computer readable storage medium is not a signal, the computer program product comprising computer program instructions that when executed by a computer cause the computer to carry out the steps of;identifying a plurality of portion portions within the software application; for each portion of the plurality of portions, assigning, by an application manager, one of a plurality of a JIT levels to the portion of the software application, wherein the plurality of JIT levels excludes a level in which no JIT compiling is carried out, including; establishing the JIT level for the portion of the software application in dependence upon both a historic JIT profile for the portion of the software application specifying, for each previous execution, one of a plurality of JIT levels previously used when jitting the portion of the software application and previous execution performance of the portion of the software application including a previous performance value and a number of times the portion was invoked;
wherein each portion of the plurality of portions of the application is assigned a different JIT level; andjitting, by the VM installed on the compute node, the portion of the software application in dependence upon the JIT level assigned to that portion of the software application. - View Dependent Claims (7, 8, 9, 10)
- JIT’
Specification