×

Run-time system having nodes for identifying parallel tasks in a logic program and searching for available nodes to execute the parallel tasks

  • US 5,471,622 A
  • Filed: 04/20/1995
  • Issued: 11/28/1995
  • Est. Priority Date: 10/04/1989
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of operating an arbitrary computer network to solve a logic query with respect to a logic program and distribute subqueries associated with said logic query over said network, said network comprising a plurality of nodes, each node of said plurality of nodes including a processor and local memory which is accessible by said processor in said node, and a plurality of communication channels for transmitting information between said plurality of nodes, each one of said plurality of communication channels coupling one of said plurality of nodes with at least one different node of said plurality of nodes in said network, comprising the steps of:

  • a. receiving said logic query with a first node of said plurality of nodes;

    b. partially solving said received query on said first node to provide a received query partial solution;

    c. testing said received query partial solution on said first node for OR-parallel subqueries and, if said received query partial solution includes said OR-parallel subqueries, identifying and collecting said OR-parallel subqueries on said first node which are included in said received query partial solution;

    d. if said received query partial solution does not include said OR-parallel subqueries, returning to step b and continuing to solve said received query on said first node;

    e. if said OR-parallel subqueries are identified in step c, determining with said first node whether a second node coupled to said first node by at least one of said plurality of communication channels is available for solution of said OR-parallel subqueries without waiting for a subquery request from the second node;

    f. if said OR-parallel subqueries are identified in step c and said second node is determined to be available in step e, transmitting at least one of said identified OR-parallel subqueries from said first node to said second node coupled to said first node; and

    g. if said OR-parallel subqueries are identified in step c and no second node is determined to be available in step e, sequentially solving on said first node said OR-parallel subqueries identified in step c;

    wherein steps a-g are performed only at run-time, andwherein steps b-d are repeated until said received query has been solved without identification of said OR-parallel subqueries or said OR-parallel subqueries have been identified in said received query partial solution.

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