US9507712B2ExpiredUtilityA1

Determining a benefit of reducing memory footprint of a java application

61
Assignee: JAMISON WILFRED CADELINAPriority: Jan 21, 2004Filed: Apr 25, 2012Granted: Nov 29, 2016
Est. expiryJan 21, 2024(expired)· nominal 20-yr term from priority
Y10S707/99957G06F 12/0253G06F 12/023Y10S707/99953G06F 11/3692G06F 8/315
61
PatentIndex Score
3
Cited by
34
References
20
Claims

Abstract

Changes in performance in a Java program are deduced from information related to garbage collection events of the program. Assumptions are made about the system, the application and garbage collection, and changes in performance that will result from modifying the program are deduced.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method, within a computer hardware system having a heap, of improving performance in a Java-based computer program, comprising:
 executing the computer program within a virtual machine; 
 identifying when the computer program enters a steady state; 
 only after the computer program being within the steady state, obtaining information regarding garbage collection associated with the computer program; and 
 predicting, based upon the information, changes in performance of the computer program that will result from modifying the computer program. 
 
     
     
       2. The method of  claim 1 , further comprising
 estimating a cost of the garbage collection to the performance by
 a duration of an average garbage collection event, and 
 a frequency of garbage collection events. 
 
 
     
     
       3. The method of  claim 2 , wherein
 the duration depends upon
 an amount of garbage to be cleaned up, 
 an algorithm used to perform the garbage collection; 
 a heap compaction, 
 a cost of reconciling object references that are moved, and 
 a number of finalizers to be executed. 
 
 
     
     
       4. The method of  claim 2 , wherein
 the frequency depends upon
 a rate of object creation, 
 a heap fragmentation, 
 a size of a heap, and 
 a garbage collection policy. 
 
 
     
     
       5. The method of  claim 1 , further comprising
 changing the computer program by reducing an amount of memory from a footprint of the computer program. 
 
     
     
       6. The method of  claim 5 , further comprising
 determining a number of additional transaction that can be executed during a run based upon
 the amount of the memory reduced from the footprint, 
 a total duration for the run, and 
 an amount of time the run is spent in garbage collection. 
 
 
     
     
       7. The method of  claim 1 , wherein
 the information associated with the garbage collection is obtained from a verbosegc. 
 
     
     
       8. A computer hardware system configured to improve a performance in a Java-based computer program, comprising:
 a memory including a heap; and 
 a processor, wherein the processor is configured to perform and/or initiate:
 executing the computer program within a virtual machine; 
 identifying when the computer program enters a steady state; 
 only after the computer program being within the steady state, obtaining information regarding garbage collection associated with the computer program; and 
 predicting, based upon the information, changes in performance of the computer program that will result from modifying the computer program. 
 
 
     
     
       9. The computer hardware system of  claim 8 , wherein
 a cost of the garbage collection to the performance is estimated using
 a duration of an average garbage collection event, and 
 a frequency of garbage collection events. 
 
 
     
     
       10. The computer hardware system of  claim 9 , wherein
 the duration depends upon
 an amount of garbage to be cleaned up, 
 an algorithm used to perform the garbage collection; 
 a heap compaction, 
 a cost of reconciling object references that are moved, and 
 a number of finalizers to be executed. 
 
 
     
     
       11. The computer hardware system of  claim 9 , wherein
 the frequency depends upon
 a rate of object creation, 
 a heap fragmentation, 
 a size of a heap, and 
 a garbage collection policy. 
 
 
     
     
       12. The computer hardware system of  claim 8 , wherein
 the processor is further configured to perform:
 changing the computer program by reducing an amount of memory from a footprint of the computer program. 
 
 
     
     
       13. The computer hardware system of  claim 12 , wherein
 the processor is further configured to perform:
 determining a number of additional transaction that can be executed during a run based upon
 the amount of the memory reduced from the footprint, 
 a total duration for the run, and 
 an amount of time the run is spent in garbage collection. 
 
 
 
     
     
       14. A computer program product comprising
 a storage hardware device having stored therein computer usable program code for improving performance in a Java-based computer program, 
 the computer usable program code, which when executed by a computer hardware system, causes the computer hardware system to perform:
 executing the computer program within a virtual machine; 
 identifying when the computer program enters a steady state; 
 only after the computer program being within the steady state, obtaining information regarding garbage collection associated with the computer program; and 
 predicting, based upon the information, changes in performance of the computer program that will result from modifying the computer program. 
 
 
     
     
       15. The computer program product of  claim 14 , wherein
 the computer usable program code further causes the computer hardware system to perform
 estimating a cost of the garbage collection to the performance by
 a duration of an average garbage collection event, and 
 a frequency of garbage collection events. 
 
 
 
     
     
       16. The computer program product of  claim 15 , wherein
 the duration depends upon
 an amount of garbage to be cleaned up, 
 an algorithm used to perform the garbage collection; 
 a heap compaction, 
 a cost of reconciling object references that are moved, and 
 a number of finalizers to be executed. 
 
 
     
     
       17. The computer program product of  claim 15 , wherein
 the frequency depends upon
 a rate of object creation, 
 a heap fragmentation, 
 a size of a heap, and 
 a garbage collection policy. 
 
 
     
     
       18. The computer program product of  claim 14 , wherein
 the computer usable program code further causes the computer hardware system to perform
 changing the computer program by reducing an amount of memory from a footprint of the computer program. 
 
 
     
     
       19. The computer program product of  claim 18 , wherein
 the computer usable program code further causes the computer hardware system to perform
 determining a number of additional transaction that can be executed during a run based upon
 the amount of the memory reduced from the footprint, 
 a total duration for the run, and 
 an amount of time the run is spent in garbage collection. 
 
 
 
     
     
       20. The computer program product of  claim 14 , wherein
 the information associated with the garbage collection is obtained from a verbosegc.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.