Fields which are individually addressable data elements in data structures are reordered to improve the efficiency of cache line access. Temporal data regarding the referencing of such fields is obtained, and a tool is used to construct a field affinity graph of temporal access affinities between the fields. Nodes in the graph represent fields, and edges between the nodes are weighted to indicate field affinity. A first pass greedy algorithm attempts to combine high affinity fields in the same cache line or block. Constraints are used to reject invalid combinations of fields. Data structures such as class are partitioned into heavily referenced and less heavily referenced portions. The partitioning is based on profile information about field access counts with indirect addressing used to reference the less heavily referenced partitioned class. A class co-location scheme is used to ensure that temporally correlated classes are placed near each other in cache blocks. A generational garbage collection algorithm is used to ensure that objects that are most heavily referenced are more likely to remain in cache blocks.

Los campos que son individualmente elementos de datos direccionables en estructuras de datos se reordenan para mejorar la eficacia de la línea acceso del escondrijo. Los datos temporales con respecto a referirse de tales campos se obtienen, y una herramienta se utiliza para construir un gráfico de la afinidad del campo de afinidades temporales del acceso entre los campos. Los nodos en el gráfico representan campos, y los bordes entre los nodos se cargan para indicar afinidad del campo. Un algoritmo codicioso del primer paso procura combinar altos campos de la afinidad en la misma línea o bloque del escondrijo. Los apremios se utilizan para rechazar combinaciones inválidas de campos. Las estructuras de datos tales como clase se reparten en porciones pesadamente referidas y menos pesadamente referidas. El repartir se basa en la información de perfil sobre cuentas del acceso del campo con la dirección indirecta usada para referirse a la clase repartida menos pesadamente referida. Un esquema de la co-localizacio'n de la clase se utiliza para asegurarse de que las clases temporal correlacionadas están puestas cerca de uno a en bloques del escondrijo. Un algoritmo generational de la colección de la basura se utiliza para asegurarse de que los objetos que se refieren lo más pesadamente posible son más probables permanecer en bloques del escondrijo.

 
Web www.patentalert.com

< (none)

< Tospovirus resistance in plants

> Parachute assembly

> (none)

~ 00023