Patents Examined by John D. Chavis
  • Patent number: 5710927
    Abstract: A method for analyzing and optimizing programs that define and use aggregate data structures. A program to be analyzed and optimized is inspected to find definitions and uses of lvalues, which are regions of memory. The lvalues may be denoted by program variables, pointer expressions, or components of aggregate lvalues. A data-flow solver determines where definitions of lvalues reach uses. A set of "least general unifiers" are computed for the definitions and uses. A replacement variable is created for each least general unifier that is determined to be replaceable. Each reference to an lvalue that corresponds to a replaceable least general unifier is replaced by a reference to the corresponding replacement variable or a component thereof. The method is applicable even in the presence of potential aliasing.
    Type: Grant
    Filed: June 14, 1995
    Date of Patent: January 20, 1998
    Assignee: Kuck & Associates, Inc.
    Inventor: Arch D. Robison
  • Patent number: 5586325
    Abstract: A method of setting array boundaries in order to simplify addressing across processor elements in a distributed memory system having global addressing. Each dimension of an array is examined to determine a lower bound, a declared upper bound and an implicit upper bound. The lower bound and the declared upper bound in each dimension are used to set limits for operations on array elements while the implicit upper bound calculated from the lower bound and the declared upper bound is used in calculating the location (processor element and offset) of a particular array element.
    Type: Grant
    Filed: December 10, 1993
    Date of Patent: December 17, 1996
    Assignee: Cray Research, Inc.
    Inventors: Thomas A. MacDonald, Janet M. Eberhart, Douglas M. Pase
  • Patent number: 5432932
    Abstract: Local and remote processes can be controlled from a data processing system performance monitor. Multiple processes can be controlled concurrently with a single action selected. Processes to be controlled can be ranked when presented to a user, to assist in determining problematic processes that need attention. Process data is captured dynamically at local and remote processes using a daemon to minimize system overhead in monitoring and controlling processes.
    Type: Grant
    Filed: October 23, 1992
    Date of Patent: July 11, 1995
    Assignee: International Business Machines Corporation
    Inventors: James N. Chen, Niels Christiansen, Joseph C. Ross, Albert T. Rowan