Patent US4965882A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4965882A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for operating a parallel processing system and related apparatus

Assignee: Hewlett Packard Development Co LP
•
Filing: 1987-10-01
•
Granted: 1990-10-23
•
Expires: 2007-10-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for operating a parallel processor system implements a beta-partitioning algorithm. According to that method, groups of working memory elements are identified which satisfy each of the conditions of all of several production rules. Then, sequences of sets are formed each corresponding to one of the production rules. The sets represent combinations of working memory elements which satisfy some or all of the conditions for the corresponding production rule. At some point during the formation of sets, the sets are subdivided into relatively equal-size subsets, each of which is assigned to a different processor. Each processor, which previously had been performing the same operations as the other processors, continues processing only its assigned subset.

Inventors

  • 👤 William Barabash
  • 👤 William S. Yerazunis

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 07:54
CPC Classifications
G; G06; G06N; G06N5/00; G06N5/04; G06N5/046; G06N5/047

Claims Analysis

Total Claims: 43
Claim 1
Independent Claim 340 words
A method for operating a parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the method comprising the steps of: identifying, by each said processor substantially simultaneously, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; forming, by each said processor substantially simultaneously and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said first sets corresponding to a unique one of said production rules the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; forming, by each said processor substantially simultaneously and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of said next sets in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; subdividing, by each said processor substantially simultaneously, a selected one of said first sets or said next sets into N unique, nonoverlapping subsets where N is no greater than the number of processors, each of said subsets corresponding to one of said processors, each said processor only forming the next sets in each sequence succeeding said corresponding subset; and performing all of the operations specified by one of the production rules for which all conditions have been satisfied.
Claim 2
Independent Claim 340 words
A method for operating a parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the method comprising the steps of: identifying, by each said processor substantially simultaneously, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; forming, by each said processor substantially simultaneously and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said first sets corresponding to a unique one of said production rules the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; forming, by each said processor substantially simultaneously and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of said next sets in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; subdividing, by each said processor substantially simultaneously, a selected one of said first sets or said next sets into N unique, nonoverlapping subsets where N is no greater than the number of processors, each of said subsets corresponding to one of said processors, each said processor only forming the next sets in each sequence succeeding said corresponding subset; and performing all of the operations specified by one of the production rules for which all conditions have been satisfied.
Claim 3
Dependent Claim 91 words
The method of claim 1 further including the steps of: determining, by each said processor, ready ones of said production rules for which that processor has formed a first set or a next set satisfying all of said conditions of the rules; choosing, by each said processor, one of the ready production rules; communicating the chosen production rules from said processors to a priority determination element; and selecting, by said priority determination element, one of said chosen production rules according to a predetermined priority scheme, to obtain a selected production rule.
Claim 4
Dependent Claim 17 words
The method of claim 2 wherein said selecting step is performed by a one of said processors.
Claim 5
Dependent Claim 14 words
The method of claim 3 wherein said priority determination element is said one processor.
Claim 6
Dependent Claim 26 words
The method of claim 2 wherein the step of performing the specified operations includes the step of performing the operations specified by the selected production rule.
Claim 7
Dependent Claim 65 words
The method of claim 5 wherein each of said working memory elements includes a time tag; wherein said communicating step includes the step of communicating information about the working memory elements which satisfy the chosen production rules; and wherein said selecting step includes the step of using a priority scheme based on the time tags in the working memory elements satisfying the chosen production rules.
Claim 8
Dependent Claim 30 words
The method of claim 6 wherein said choosing step includes the step of comparing to each other the time tags of the working memory elements satisfying the ready production rules.
Claim 9
Dependent Claim 32 words
The method of claim 7 wherein said subdividing step includes the step of assigning subsets to processors according to the time tags in at least one working memory element in the subsets.
Claim 10
Dependent Claim 16 words
The method of claim 1 wherein said operations performing step is performed by a master processor.
Claim 11
Dependent Claim 16 words
The method of claim 9 wherein said master processor is one of said plurality of processors.
Claim 12
Dependent Claim 15 words
The method of claim 1 wherein the sequence of steps of claim 1 are repeated.
Claim 13
Dependent Claim 34 words
The method of claim 1 wherein said processes each have a local memory, and wherein said method includes the step of storing said working memory elements and said production rules into said local memories.
Claim 14
Dependent Claim 61 words
The method of claim 1 wherein said processors each have a local memory and are coupled to a shared memory, and wherein said method further includes the steps of: storing certain of said working memory elements and said production rules into said local memories; and storing the other of said working memory elements and said production rules into said shared memory.
Claim 15
Dependent Claim 30 words
The method of claim 1 wherein said step of subdividing occurs after the step of forming said first sets and before the step of forming said sequences of next sets.
Claim 16
Dependent Claim 47 words
The method of claim 1 wherein said production rules each indicate a level of subdivision corresponding to one of the series of conditions for that rule, and wherein for each rule said step of subdividing for each rule occurs at the level indicated for that production rule.
Claim 17
Dependent Claim 43 words
The method of claim 1 wherein certain of said conditions include condition tests, and wherein the forming steps each include the step of ensuring that the ones of said working memory elements satisfying the conditions including condition tests also meet said condition tests.
Claim 18
Dependent Claim 50 words
The method of claim 1 wherein said step of subdividing said sets includes the step of classifying said sets into the same number of classes as the number of processors according to a characteristic of the next sets such that each of said classes corresponds to one of said processors.
Claim 19
Dependent Claim 29 words
The method of claim 17 wherein the step of classifying said sets is performed in accordance with a characteristic of said working memory elements of the sets being classified.
Claim 20
Dependent Claim 362 words
A parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the system comprising: a plurality of identifying means for identifying, by each said processor substantially simultaneously, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; a plurality of first forming means for forming, by each said processor substantially simultaneously and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said first sets corresponding to a unique one of said production rules, the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; a plurality of second forming means for forming, by each said processor substantially simultaneously and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of next said set in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; a plurality of subdividing means for subdividing, by each said processor substantially simultaneously, a selected one of said first sets or said next sets into N unique, nonoverlapping subsets where N is no greater than the number of processors, each of said subsets corresponding to one of said processors, each said processor only forming the next sets in each sequence succeeding said corresponding subset; and performing means for performing all of the operations specified by one of the production rules for which all conditions have been satisfied.
Claim 21
Dependent Claim 362 words
A parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the system comprising: a plurality of identifying means for identifying, by each said processor substantially simultaneously, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; a plurality of first forming means for forming, by each said processor substantially simultaneously and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said first sets corresponding to a unique one of said production rules, the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; a plurality of second forming means for forming, by each said processor substantially simultaneously and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of next said set in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; a plurality of subdividing means for subdividing, by each said processor substantially simultaneously, a selected one of said first sets or said next sets into N unique, nonoverlapping subsets where N is no greater than the number of processors, each of said subsets corresponding to one of said processors, each said processor only forming the next sets in each sequence succeeding said corresponding subset; and performing means for performing all of the operations specified by one of the production rules for which all conditions have been satisfied.
Claim 22
Dependent Claim 101 words
The system of claim 19 further including: a plurality of determining means for determining, by each said processor, ready ones of said production rules for which that processor has formed a first set or a next set satisfying all of said conditions of the rules; a plurality of choosing means for choosing, by each said processor, one of the ready production rules; communication means for communicating the chosen production rules from said processors; and priority determination means for selecting one of said chosen production rules from said communication means according to a predetermined priority scheme, to obtain a selected production rule.
Claim 23
Dependent Claim 15 words
The system of claim 20 wherein said priority determination means is one of said processors.
Claim 24
Dependent Claim 21 words
The system of claim 20 wherein the performing means includes means for performing the operations specified by the selected production rule.
Claim 25
Dependent Claim 62 words
The system of claim 22 wherein each of said working memory elements includes a time tag; wherein said communication means includes means for communicating information about the working memory elements which satisfy the chosen production rules; and wherein the priority scheme of said priority determination means is based on the time tags in the working memory elements satisfying the chosen production rules.
Claim 26
Dependent Claim 29 words
The system of claim 23 wherein said choosing means each include means for comparing to each other the time tags of the working memory elements satisfying the production rules.
Claim 27
Dependent Claim 32 words
The system of claim 24 wherein said subdividing means each include means for assigning subsets to processors according to the time tags in at least one working memory element in the subsets.
Claim 28
Dependent Claim 15 words
The system of claim 19 wherein said performing means is located in a master processor.
Claim 29
Dependent Claim 16 words
The system of claim 26 wherein said master processor is one of said plurality of processors.
Claim 30
Dependent Claim 34 words
The system of claim 19 wherein said processors each have a local memory, and wherein said system includes storing means for storing said working memory elements and said production rules into said local memories.
Claim 31
Dependent Claim 66 words
The system of claim 19 wherein said processors each have a local memory and are coupled to a shared memory, and wherein said system further includes: first storing means for storing certain of said working memory elements and said production rules into said local memories; and second storing means for storing the other of said working memory elements and said production rules into said shared memory.
Claim 32
Dependent Claim 48 words
The system of claim 19 wherein said production rules each indicate a level of subdivision corresponding to one of the series of conditions for that rule, and wherein for each rule said subdividing means subdivide the sets for each rule at the level indicated for that production rule.
Claim 33
Dependent Claim 46 words
The system of claim 19 wherein certain of said conditions include condition tests, and wherein the first and second forming means each include an element for ensuring that the ones of said working memory elements satisfying the conditions including condition tests also meet said condition tests.
Claim 34
Dependent Claim 47 words
The system of claim 19 wherein the subdividing means each include means for classifying said sets into the same number of classes as the number of processors according to a characteristic of the next sets such that each of said classes corresponds to one of said processors.
Claim 35
Dependent Claim 27 words
The system of claim 32 wherein said classifying means classify said sets in accordance with a characteristic of said working memory elements of the sets being classified.
Claim 36
Dependent Claim 380 words
A computer processing means for operating a processor in a parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the processing means comprising: identifying means for identifying, substantially simultaneously with the other said processors, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; first forming means for forming, substantially simultaneously with the other said processors and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said sets corresponding to a unique one of said production rules, the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; second forming means for forming, substantially simultaneously with the other said processors and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of said next set in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; subdividing means for subdividing, substantially simultaneously with the other of said processors, a selected one of said first sets or said next sets into a unique subset, said processor only forming the next sets in each sequence succeeding said subset; determining means for determining ready ones of said production rules for which said processor has formed a first set or a next set satisfying all of said conditions of the rules; choosing means for choosing one of the ready production rules; and communication means for communicating the chosen production rules to priority determination means for selecting one of said chosen production rules.
Claim 37
Dependent Claim 380 words
A computer processing means for operating a processor in a parallel processing system having a plurality of processors, said processors having access to working memory elements to be examined and said processors implementing production rules specifying operations to be performed when a series of conditions are satisfied by specified ones of the working memory elements, the processing means comprising: identifying means for identifying, substantially simultaneously with the other said processors, groups of said working memory elements, each of said groups corresponding to a unique one of the conditions of each of said production rules such that all of the elements in each group satisfy the corresponding condition; first forming means for forming, substantially simultaneously with the other said processors and from said groups of working memory elements, first sets of pairs of said working memory elements, each of said sets corresponding to a unique one of said production rules, the elements in each of the pairs in said first sets respectively satisfying first and second conditions of the corresponding production rule; second forming means for forming, substantially simultaneously with the other said processors and from said groups of working memory elements, sequences of next sets of said working elements, each said sequence being associated with at least one of said production rules such that each said next set in each said sequence corresponds to a next one of the series of conditions for the associated production rules, each of said next set in each of said sequences containing working memory elements contained in a prior set in that sequence as well as working memory elements from said groups which satisfy the corresponding condition in the associated production rule; subdividing means for subdividing, substantially simultaneously with the other of said processors, a selected one of said first sets or said next sets into a unique subset, said processor only forming the next sets in each sequence succeeding said subset; determining means for determining ready ones of said production rules for which said processor has formed a first set or a next set satisfying all of said conditions of the rules; choosing means for choosing one of the ready production rules; and communication means for communicating the chosen production rules to priority determination means for selecting one of said chosen production rules.
Claim 38
Dependent Claim 39 words
The computer processing means of claim 34 wherein each of said working memory elements includes a time tag; and wherein said communication means includes means for communicating information about the working memory elements which satisfy the chosen production rules.
Claim 39
Dependent Claim 30 words
The computer processing means of claim 35 wherein said choosing means includes means for comparing to each other the time tags of the working memory elements satisfying the production rules.
Claim 40
Dependent Claim 35 words
The computer processing means of claim 36 wherein said subdividing means includes means for assigning a subset to the processor according to the time tags in at least one working memory element in the subset.
Claim 41
Dependent Claim 50 words
The computer processing means of claim 34 wherein said production rules each indicate a level of subdivision corresponding to one of the series of conditions for that rule, and wherein for each rule said subdividing means subdivides the sets for each rule at the level indicated for that production rule.
Claim 42
Dependent Claim 47 words
The computer processing means of claim 34 wherein certain of said conditions include condition tests, and wherein the first and second forming means each include means for ensuring that the ones of said working memory elements satisfying the conditions including condition tests also meet said condition tests.
Claim 43
Dependent Claim 33 words
The computer processing means of claim 34 wherein the subdividing means includes means for classifying said sets into classes according to a characteristic of said working memory elements of the sets being classified.

References Cited (Backward Citations)

US4635199A Cited
US4779208A Cited
US4837735A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-10-22 1994-04-23 1994-10-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-10-22 1998-04-23 1998-10-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-10-22 2002-04-23 2002-10-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag