← Back to Patent Explorer
US4773038A Expired / Lapsed US ⏱️ 0.0 years remaining

Method of simulating additional processors in a SIMD parallel processor array

Assignee: Thinking Machines Corp
•
Filing: 1986-02-24
•
Granted: 1988-09-20
•
Expires: 2006-02-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method is described for simulating additional processors in a SIMD computer by dividing the memory associated with each processor into a plurality of sub-memories and then operating on each sub-memory in succession as if it were associated with a separate processor. Thus, a first instruction or set of instructions is applied to all the processors of the array to cause at least some processors to process data stored at a first location or locations in the first sub-memory. Thereafter, the same first instruction or set of instructions is applied to all the processors of the array to cause at least some processors to process data stored at the same first location in a second sub-memory. And so forth for each of the sub-memories. By operating a SIMD computer in this fashion, it is possible in effect to vary the number of processors in the array so as to provide the number of processors required for a problem.

Inventors

  • 👤 W. Daniel Hillis
  • 👤 Clifford Lasser
  • 👤 Brewster Kahle
  • 👤 Karl Sims

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 21:15
CPC Classifications
G; G06; G06F; G06F15/00; G06F15/76; G06F15/80; G06F15/8007; G06F15/8023

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 419 words
In a single-instruction multiple-data (SIMD) parallel processor comprising a controller and an array of processors controlled in parallel by said controller, each processor comprising an identical input, an identical output, an identical processing element and an identical memory associated with each processing element, the processing element operating in accordance with instructions provided by said controller on data provided by its input and associated memory to produce data at its output, a method of simulating the presence of additional processors in the array comprising the steps of: (a) subdividing the memory associated with the processing elements in identical fashion to form a plurality of submemories associated with each processing memory whereby each memory is divided into at least first and second submemories, the first submemories of all the processing elements comprising a first memory group and the second submemories of all the processing elements comprising a second memory group, (b) providing to each memory group in turn a first identical sequence of instructions by: (1) providing instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at first memory locations in a first submemory associated with the processing element, and (2) at a subsequent time, providing the same instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at second memory locations in a second submemory associated with the processor, said first and second memory locations in said first and second submemories having the same relative location in their respective submemories, and (c) providing to each memory group in turn a second identical sequence of instructions, which may be the same as or different from the first identical sequence of instructions, by: (1) providing instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at third memory locations in said first submemory associated with the processing element, and (2) at a subsequent time, providing the same instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at fourth memory locations in said second submemory associated with the processor, said third and fourth memory locations in said first and second submemories having the same relative location in their respective submemories and wherein said third and fourth memory locations may be the same as or different from said first and second memory locations, respectively.
Claim 2
Dependent Claim 419 words
In a single-instruction multiple-data (SIMD) parallel processor comprising a controller and an array of processors controlled in parallel by said controller, each processor comprising an identical input, an identical output, an identical processing element and an identical memory associated with each processing element, the processing element operating in accordance with instructions provided by said controller on data provided by its input and associated memory to produce data at its output, a method of simulating the presence of additional processors in the array comprising the steps of: (a) subdividing the memory associated with the processing elements in identical fashion to form a plurality of submemories associated with each processing memory whereby each memory is divided into at least first and second submemories, the first submemories of all the processing elements comprising a first memory group and the second submemories of all the processing elements comprising a second memory group, (b) providing to each memory group in turn a first identical sequence of instructions by: (1) providing instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at first memory locations in a first submemory associated with the processing element, and (2) at a subsequent time, providing the same instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at second memory locations in a second submemory associated with the processor, said first and second memory locations in said first and second submemories having the same relative location in their respective submemories, and (c) providing to each memory group in turn a second identical sequence of instructions, which may be the same as or different from the first identical sequence of instructions, by: (1) providing instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at third memory locations in said first submemory associated with the processing element, and (2) at a subsequent time, providing the same instructions from the controller to the processors to cause the processing elements of at least some processors each to process data stored at fourth memory locations in said second submemory associated with the processor, said third and fourth memory locations in said first and second submemories having the same relative location in their respective submemories and wherein said third and fourth memory locations may be the same as or different from said first and second memory locations, respectively.
Claim 3
Dependent Claim 31 words
The method of claim 1 further comprising the steps of performing steps (c) (1) and (2) on new data stored at the same memory locations in the first and second submemories.
Claim 4
Dependent Claim 34 words
The method of claim 1 further comprising the steps of repeating steps (b) (1) and (2) and (c) (1) and (2) on data stored at additional memory locations in the first and second submemories.

References Cited (Backward Citations)

US3573852A Cited
US4380046A Cited
US4546433A Cited
US4539655A Cited
US4523273A Cited
US4621339A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1991-09-20 1992-03-21 1992-09-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1995-09-20 1996-03-21 1996-09-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1999-09-20 2000-03-21 2000-09-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag