Using optimized libraries to improve performance of deployed application code at runtime
AssigneeIntel Corporation
InventorsGururaj Nagendra, Stewart Taylor
Life of this patent
Estimating the term…
Abstract
A method to automatically replace computationally intensive functions with optimized functions in managed code is disclosed. If the underlying processor has associated optimized functions, managed application code is disassembled and parsed to find computationally intensive functions. The computationally intensive functions are then replaced with optimized functions, and the application code is re-compiled if necessary.
Claims24
A method comprising:
- disassembling managed application binaries to create disassembled code;
- parsing the disassembled code to identify at least one function to be replaced;
- and
- replacing the at least one function to be replaced with an optimized function.
A method comprising:
- determining if managed application binaries are running on a platform having a processor for which an optimized library is available;
- and
- if the managed application binaries are running on a platform having a processor for which an optimized library is available, extracting a function table from the managed application binaries and performing a search and replace function on the function table to replace at least one computationally intensive function with a corresponding optimized function from an optimized library.
A system, comprising:
- a bus;
- a processor coupled to the bus;
- and
- memory coupled to the processor, the memory adapted for storing instructions, which upon execution by the processor, cause identification of functions in disassembled managed application code to be replaced;
- and replacement of the identified functions with a call to an optimized library function.
An article of manufacture comprising a machine-accessible medium having stored thereon instructions which, when executed by a machine, cause the machine to:
- identify an underlying microprocessor;
- disassemble managed application code to create disassembled code;
- parse the disassembled code to identify at least one function to be replaced;
- and
- replace the at least one function to be replaced with an optimized library function, wherein the optimized library function has been optimized for the underlying microprocessor.
Dependencies are inferred from the claim text.