| 6601235 |
Method and apparatus for dynamically deoptimizing compiled activations |
| Jul-29-2003 |
Methods and apparatus for dynamically deoptimizing a frame in a control stack during the execution of a computer program are disclosed. The described methods are particularly suitable for use in computer... |
| 6578194 |
System and method using extended relocation types and operations in relocating operations |
| Jun-10-2003 |
A method, apparatus, and article of manufacture for the inclusion of extended relocation types and operations performed thereon in a relocation directory within an object module or load module. The relocation... |
| 6578191 |
Method and apparatus for dynamic generation of adapters |
| Jun-10-2003 |
This invention provides for the implementation of dynamic "event to method" adapter class generation. Event to method adapter classes and objects are automatically and dynamically generated and wired to... |
| 6571388 |
Building a custom software environment including pre-loaded classes |
| May-27-2003 |
A system for creating a custom environment for executing application programs in a target device. The system broadens the applicability of software environments like Java by providing custom pre-loaded... |
| 6564374 |
Method and apparatus for employing cognitive compares in compare statement sequences |
| May-13-2003 |
A compare sequence is executed at least once, and the results of that execution are used to modify the compare sequence for a subsequent execution of the compare sequence. In a preferred embodiment, the... |
| 6546551 |
Method for accurately extracting library-based object-oriented applications |
| Apr-8-2003 |
The present invention is capable of accurately extracting multiple applications with respect to a class library. The invention relies on a configuration file for an application program and/or library,... |
| 6530079 |
Method for optimizing locks in computer programs |
| Mar-4-2003 |
A method and several variants for using information about the scope of access of objects acted upon by mutual exclusion, or mutex, locks to transform a computer program by eliminating locking operations... |
| 6526572 |
Mechanism for software register renaming and load speculation in an optimizer |
| Feb-25-2003 |
The inventive mechanism operates to optimize program efficiency in a two phase process. In the first phase, the mechanism conducts a dependency analysis on the instructions to determine dependency relationships... |
| 6484314 |
Exception handling method and system |
| Nov-19-2002 |
The present invention provides a method and a system for generating an exception handling instruction and for avoiding the execution of unnecessary instructions. More particularly, an internal opcode in... |
| 6470493 |
Computer method and apparatus for safe instrumentation of reverse executable program modules |
| Oct-22-2002 |
Computer method and apparatus allows instrumentation of program modules while maintaining exception-handling unwinding context. In the case of instrumenting procedure prologues, the invention preserves... |
| 6457172 |
Compiler for supporting multiple runtime data representations |
| Sep-24-2002 |
A compiler having one or more separate components, each of which contains the source code of the compiler which is responsible for implementing a corresponding data representation. These components are... |
| 6434742 |
Symbol for automatically renaming symbols in files during the compiling of the files |
| Aug-13-2002 |
The present symbol renaming process allows a symbol in a first source code file to be renamed by the linker. This allows new layers of software to be added under an existing interface without recompiling... |
| 6427235 |
Method and apparatus for performing prefetching at the critical section level |
| Jul-30-2002 |
One embodiment of the present invention provides a system for compiling source code into executable code that performs prefetching for memory operations within critical sections of code that are subject... |
| 6427234 |
System and method for performing selective dynamic compilation using run-time information |
| Jul-30-2002 |
Selective dynamic compilation of source code is performed using run-time information. A system is disclosed that implements a declarative, annotation based dynamic compilation of the source code, employing... |
| 6374371 |
Method and apparatus for monitoring component latency drifts |
| Apr-16-2002 |
A method and apparatus for monitoring the response times of computer system components in order to improve computer system reliability and performance are provided. The method and apparatus are particularly... |
| 6374369 |
Stochastic performance analysis method and apparatus therefor |
| Apr-16-2002 |
A programmable method for analyzing the performance of software using a combination of statistical sampling, hardware events and feedback, and a finite state machine execution model. Performance analysis... |
| 6367069 |
Efficient array descriptors for variable-sized, dynamically allocated arrays |
| Apr-2-2002 |
One embodiment of the present invention provides a computer readable memory including an array descriptor data structure which contains information on an organization of an array of data values in order... |
| 6363523 |
Optimization of N-base typed arithmetic expressions |
| Mar-26-2002 |
A method for arithmetic expression optimization includes receiving a first instruction defined for a first processor having a first base, the first instruction including an operator and at least one operand,... |
| 6360360 |
Object-oriented compiler mechanism for automatically selecting among multiple implementations of objects |
| Mar-19-2002 |
In an object-oriented or object-based computer system, a compiler mechanism allows a compiler to automatically select among multiple implementations of an object to optimize the performance of the compiled... |
| 6327704 |
System, method, and product for multi-branch backpatching in a dynamic translator |
| Dec-4-2001 |
A computer-implemented system, method, and product are provided for multi-branch backpatching in a dynamic translator. Such backpatching typically increases the speed of execution of translated instructions... |
| 6314560 |
Method and apparatus for a translation system that aggressively optimizes and preserves full synchronous exception state |
| Nov-6-2001 |
A translating software emulator designed for converting code from a legacy system to a target system and fully preserving the synchronous exception state while still allowing for full and aggressive optimization... |
| 6295643 |
Method and apparatus for improving java virtual machine performance using persistent execution information |
| Sep-25-2001 |
A method and apparatus in a data processing system for optimizing execution of an object by a virtual machine. Monitoring is performed to detect execution of the object. Responsive to detecting execution... |
| 6295642 |
Method and apparatus for partial just in time compiling in a data processing system |
| Sep-25-2001 |
A method and apparatus for just in time compilation of Java bytecode methods and provides a means to compile only the paths that are actually executed. An iterative process is employed whereby bytecodes... |
| 6295638 |
Method and apparatus for loading native object code in data processing system |
| Sep-25-2001 |
A method and apparatus that provides a method for loading native code into the memory of a data processing system for use by a Java virtual machine. Native code is loaded for a method into the memory,... |
| 6289508 |
Method and apparatus for dynamic optimization |
| Sep-11-2001 |
The present invention is a method and apparatus for dynamic optimization of a dynamic physical system having a device under control and a controller along with a modeling system having an estimator and... |
| 6289505 |
Method, apparatus and computer programmed product for binary re-optimization using a high level language compiler |
| Sep-11-2001 |
Apparatus, methods and computer program products are disclosed for a high level language compiler that includes a binary re-optimization capability. This re-optimization capability inputs a binary executable... |
| 6249906 |
Adaptive method and system to minimize the effect of long table walks |
| Jun-19-2001 |
Current software technology entails writing application programs in a high level language intended to facilitate portability to different computer processor platforms. Because the program is portable,... |
| 6240500 |
Method for dynamically placing procedures of a program in a memory |
| May-29-2001 |
A method places procedures of an application program in a memory in order to maximize performance. The application program is first mapped to non-executable addresses of the memory. A segment of the memory... |
| 6237141 |
Method and apparatus for dynamically optimizing byte-coded programs |
| May-22-2001 |
Methods and apparatus for dynamically determining whether portions of code should be interpreted or compiled in order to optimize a software application during run-time are disclosed. According to one... |
| 6223339 |
System, method, and product for memory management in a dynamic translator |
| Apr-24-2001 |
The present invention is a system, method, and product for improving the speed of dynamic translation systems by efficiently positioning translated instructions in a computer memory unit. More specifically,... |
| 6219832 |
System and method of using annotations to optimize dynamically translated code in the presence of signals |
| Apr-17-2001 |
A method and system of dynamically translating code that uses code annotations to determine whether the dynamic translator must fully materialize machine state. At compilation time, annotations are placed... |
| 6189141 |
Control path evaluating trace designator with dynamically adjustable thresholds for activation of tracing for high (hot) activity and low (cold) activity of flow control |
| Feb-13-2001 |
A computer-implemented system, method, and product are provided to designate and translate traces of original instructions of an executable file at run time based on dynamic evaluation of control flow... |
| 6182283 |
Linker optimization for compiled object oriented programs |
| Jan-30-2001 |
When compiling a program using an object oriented language and virtual functions addressed by virtual function tables, the program may include virtual functions that are defined but not used. The compiler... |
| 6179491 |
Method and apparatus for slicing class hierarchies |
| Jan-30-2001 |
Given a class hierarchy (a collection of classes and inheritance relations among them) and a program P that uses the hierarchy, a slice of the class hierarchy is computed with respect to the program by... |
| 6170083 |
Method for performing dynamic optimization of computer code |
| Jan-2-2001 |
Early Java Virtual Machine implementations executed Java programs very slowly since the Java byte codes were interpreted. Later, Java compilers were introduced to improve performance. To further improve... |
| 6158047 |
Client/server system for fast, user transparent and memory efficient computer language translation |
| Dec-5-2000 |
An apparatus for translating a multiple user program into a native machine code to run on a native computer hardware having memory and an operating system that is capable of detecting whether the program... |
| 6151705 |
Efficient use of the base register auto-increment feature of memory access instructions |
| Nov-21-2000 |
The present invention is a compiler optimization algorithm that reduces address computation overhead for architectures that support an auto-increment addressing mode for memory access instructions. The... |
| 6145124 |
Software optimization system |
| Nov-7-2000 |
A system for reading existing program source codes which may be initially stored in computer memory, hard disk storage devices, on floppy disk storage device, diskettes, or virtually any other computer... |
| 6110226 |
Java development environment using optimizing ahead-of-time compiler |
| Aug-29-2000 |
The present invention, generally speaking, provides a machine-independent solution suitable for high-performance systems development. In a preferred embodiment, the solution is Java-based, providing machine... |
| 6093216 |
Method of run-time tracking of object references in Java programs |
| Jul-25-2000 |
Many programming languages utilize reference pointers in computer code. Furthermore, some of these programming languages perform memory management in the form of garbage collection. Once such language... |
| 6091897 |
Fast translation and execution of a computer program on a non-native architecture by use of background translator |
| Jul-18-2000 |
A computer system for executing a binary image conversion system which converts instructions from a instruction set of a first, non native computer system to a second, different native computer system,... |
| 6085035 |
Method and apparatus for efficient operations on primary type values without static overloading |
| Jul-4-2000 |
Apparatus, methods, and computer program products are disclosed for providing optimized access to pointer or externally-tagged primitive type data-values. The invention maintains a type identifier external... |
| 6078744 |
Method and apparatus for improving compiler performance during subsequent compilations of a source program |
| Jun-20-2000 |
Apparatus, methods, and computer program products are disclosed for improving the performance of subsequent compilations of a source program. The initial compilation of the source program journals computationally... |
| 6059842 |
System and method for optimizing computer software and hardware |
| May-9-2000 |
A method of optimizing the operation of a computer system in running application programs in accordance with system capabilities, user preferences and configuration parameters of the application program.... |
| 6052530 |
Dynamic translation system and method for optimally translating computer code |
| Apr-18-2000 |
A dynamic translation system is configured to translate existing code into translated code which is compatible with a particular computer system. As the dynamic translation system translates the existing... |
| 6052529 |
Data updating method using overlap area and program converting device for converting update program in distributed-memory parallel processor |
| Apr-18-2000 |
In a parallel processor, a local area and an overlap area are assigned to the memory of each processing element (PE), and each PE makes calculations to update the data in both areas at the runtime. If... |
| 6035123 |
Determining hardware complexity of software operations |
| Mar-7-2000 |
A new class of general purpose computers called Programmable Reduced Instruction Set Computers (PRISC) use RISC techniques a basis for operation. In addition to the conventional RISC instructions, PRISC... |
| 6002875 |
Method for the reduction of instruction cache miss rate using optimization data from trace data profiles |
| Dec-14-1999 |
A method for the reduction of instruction cache misses comprises step of generating function profiles of potential cache misses, step of computing function activities and dividing them in nonzero-activity... |
| 5970249 |
Method and apparatus for performing byte-code optimization during pauses |
| Oct-19-1999 |
Methods and apparatus for dynamically compiling byte codes associated with methods during idle periods in the execution of a computer program are disclosed. The described methods are particularly suitable... |
| 5966536 |
Method and apparatus for generating an optimized target executable computer program using an optimized source executable |
| Oct-12-1999 |
A method and apparatus for transforming a source executable code optimized for a source processor into a target executable code optimized for execution on a target processor is provided. Initially, the... |