US 7,542,981 B2
Methods and apparatus for parallel execution of a process
Long Yin Choy, Hong Kong (China); Alan Edelman, Newton, Mass. (US); and Parry Jones Reginald Husbands, Albany, Calif. (US)
Assigned to Massachusetts Institute of Technology, Cambridge, Mass. (US)
Filed on Oct. 28, 2005, as Appl. No. 11/262,475.
Claims priority of provisional application 60/623682, filed on Oct. 29, 2004.
Prior Publication US 2006/0101050 A1, May 11, 2006
Int. Cl. G06F 17/00 (2006.01); G06F 15/16 (2006.01); G06F 9/45 (2006.01)
U.S. Cl. 707—101  [707/100; 709/203; 717/149] 59 Claims
OG exemplary drawing
 
1. A method of processing a computer program that manipulates a data structure stored on a parallel server comprising a plurality of processors, wherein a portion of the data structure is stored on each of the plurality of processors, and wherein the method comprises acts of:
(a) executing a first routine based on code in the computer program that causes a first request to perform a first operation on the data structure to be sent to the parallel server, wherein the first routine is a routine that overloads a serial routine that, when executed, causes the first operation to be performed serially; and
(b) executing a second routine based on code in the computer program that causes a second request to be sent to the parallel server, wherein the second request specifies an abstract splitting of the data structure, and wherein the second request includes an instruction to at least one specific processor of the plurality of processors to perform a second operation on the portion of the data structure stored on the at least one specific processor.