Method for optimizing creation and destruction of objects in computer programs
US6381738B1 · kind B1 · utility
Assignee
Inventors
Key dates
| Filing date | Jul 16, 1999 |
| Grant date | Apr 30, 2002 |
| Priority date | — |
| Expiry date | Jul 16, 2019 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F12/0253
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
Information is computed about the reachability relationships among objects and pointers to enable transformation of a computer program for optimizing the creation and destruction of objects, while strictly performing the semantics of the original program. An interprocedural analysis is used to determine whether an object that is allocated on the heap during the execution of a procedure is not reachable from any global variable, parameter, or the return value of the procedure after it returns. If so, that object can be allocated on the stack frame of the procedure in which it is otherwise heap-allocated. This simplifies the memory allocation and deallocation operations, as allocation on the stack can be done more efficiently than allocation on the heap, and objects allocated on the stack frame of a procedure are automatically deallocated when the procedure returns, without incurring the overhead of garbage collection. This, in turn, leads to faster programs which use fewer computer processor resources to execute. The interprocedural analysis of the program summarizes the effect of a procedure call succinctly for different calling contexts of the procedure using a single summary repr…
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.