×

System and method for determining a cache optimized ordering of cells in an unstructured graph

  • US 7,269,542 B2
  • Filed: 10/16/2002
  • Issued: 09/11/2007
  • Est. Priority Date: 10/16/2002
  • Status: Active Grant
First Claim
Patent Images

1. A system for determining a cache optimized ordering of cells in an unstructured graph, wherein the unstructured graph is a computer-generated file that is loaded from storage into memory, the system comprising:

  • a bounding module identifying cells laying on a specified portion of a boundary of a logically-defined grid for the unstructured graph, wherein the unstructured graph comprises a shape having more than two dimensions;

    a reordering module adding each identified cell along the specified portion of the boundary into an element of a provisional level set array block, inserting one or more further cells that lie between each non-contiguous pair of cells in the logically-defined grid into an element of the provisional level set array block, wherein each further cell is contiguous in the logically defined grid to at least one of the cells in the provisional level set array block, and ordering the cells in the provisional level set array block such that traversal through the provisional array results in a traversal through contiguous cells in the logically defined grid for the unstructured graph;

    a searching module finding each additional cell in the unstructured graph that is contiguous in each dimension to the at least one cell added previously to the level set array block; and

    an iteration module repeating the steps of identifying, adding, inserting, and ordering each cell remaining in the logically-defined grid into the provisional level set array block, wherein, upon termination of the iteration, the provisional level set array is a computer-generated file such that the order specified by the provisional level set array block for accessing the cells in the unstructured graph is a regular cell ordering, wherein the ordering ensures increased spatial and temporal data locality resulting in cache-friendly run-time behavior that increases program performance.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×