Inventors:
Guy L. Steele - Lexington MA
W. Daniel Hillis - Brookline MA
Guy Blelloch - Cambridge MA
Michael Drumbeller - Belmont MA
Brewster Kahle - Somerville MA
Clifford Lasser - Boston MA
Abhiram Ranade - New Haven CT
James Salem - Waltham MA
Karl Sims - Somerville MA
Assignee:
Thinking Machines Corporation - Cambridge MA
International Classification:
G06F 1516
Abstract:
A virtual processor mechanism and specific techniques and instructions for utilizing such virtual processor mechanism within an SIMD computer having numerous processors, and each physical processor having dedicated memory associated therewith. Each physical processor is used to simulate multiple "virtual" processors, with each physical processor simulating the same number of virtual processors. The memory of each physical processor is divided into n regions of equal size, each such region being allocated to one virtual processor, where n is the number of virtual processors simulated by each physical processor. Whenever an instruction is processed, each physical processor is time-sliced among the virtual memory regions, performing the operation first as one virtual processor, then another, until the operation has been performed for all virtual processors. Physical processors are switched among the virtual processors in a completely regular, predictable, deterministic fashion. The virtual processor mechanism switches among virtual processors within instructions, so that at the completion of each instruction, it has been executed on behalf of all virtual processors.