IP Library Granted Patent US 7,788,658
Granted Patent B2
US 7,788,658 · App. 11/421,158 · Granted Aug 31, 2010

Computer code partitioning for enhanced performance

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,788,658
App. No.
11/421,158
Granted
Aug 31, 2010
Kind
B2
Abstract

A method and system for enhancing the execution performance of program code. An analysis of the program code is used to generate code usage information for each code module. For each module, the code usage information is used to determine whether the code module should be separated from its original module container. If so, the code module is migrated to a new module container, and the code module in the original module container is replaced with a reference to the code module in the new module container.

Claims (8)

1. A method for enhancing the execution performance of program code, the program code including at least one original module container, the original module container including at least one code module, wherein the code module is a class method, the method comprising:

receiving code usage information for the code module in the original module container, the code usage information generated from an analysis of the program code, the code usage information including a frequency of use of the code module and an order of use of the code module, wherein the code usage information is obtained from at least one representative execution of the program code, wherein receiving code usage information for the code module in the original module container includes performing a static analysis of the program code;

determining if the code module is separable from the original module container;

determining that the code module in the original module container should be separated from the original module container based, at least in part, on the code usage information;

assigning a rank to the code module based on the usage information;

transporting the code module to a new module container, wherein the new module container is a class containing the class method, the new module container including other code modules with the same assigned rank as the code module;

replacing the code module in the original module container with a reference to the code module in the new module container; and

recursively descending through the program code and separating module containers into multiple code bases.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AIRBNB, INC.
Reel/Frame 056427/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2006
From: JAVED, TAIMUR; LOATS, PHILIP; TRACEY, II, WILLIAM J.; WOOD, III, DAVID A.
To: INTERNATIONAL BUSINESS MACHINES CORP.
Reel/Frame 017698/0642 →
Continuity (1)
Related Publication 20070283328A1 · Dec 6, 2007