×

Profile-driven data layout optimization

  • US 7,496,909 B2
  • Filed: 02/28/2005
  • Issued: 02/24/2009
  • Est. Priority Date: 04/04/2000
  • Status: Expired due to Fees
First Claim
Patent Images

1. One or more computer-readable media having computer-executable instructions for performing a method of splitting a class, the method comprising:

  • specifying at least one threshold corresponding to a certain number of memory references made to at least one of a plurality of data members of an object;

    specifying a proposed cold group via the at least one threshold;

    receiving an indication of a policy according to a policy framework supporting a plurality of options and configured to determine whether or not the class is to be split based at least on the proposed cold group, wherein the policy overrides a default policy by specifying the policy for a particular class, wherein the policy specifies at least one selected from the group consisting of;

    the class is split if the proposed cold group is bigger than a hot group overhead only, the class is split if the proposed cold group is bigger than a hot group overhead plus the proposed cold group overhead, and the class is split if the proposed cold group is bigger than a hot group overhead plus a fraction of the proposed cold group overhead;

    assigning memory locations for data members for a hot group of the object within a first unit of memory in a virtual memory system;

    assigning memory locations for data members for the proposed cold group of the object within a second unit of memory in the virtual memory system separately loadable into primary memory from the first unit; and

    splitting the plurality of data members of the object into at least the hot group and the proposed cold group based at least in part upon the at least one threshold and profile data corresponding to the plurality of data members of the object and responsive to determining that the policy indicates that the class is to be split.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×