Patent ID: 7454749

Claim:
A method of parallel processing on a computer array comprising the steps of: creating a virtual single process multiple data computer system comprising an array controller and a plurality of parallel processing units, said array controller having a shared memory and each of said parallel processing units having a dedicated local memory; creating programs for each of said parallel processing units wherein each of said programs performs a predetermined function on predetermined data stored on said dedicated memory of each parallel processing unit and each of said programs shares data directly with other programs of said programs using a shared memory architecture such that said array controller and said parallel processing units operate virtually as a single process multiple data computer; determining a topology of a physical hardware configuration on which said virtual single process multiple data computer system will execute said programs, said topology having at least one computing node; allocating at least one of said parallel processing units to at least one of said computing nodes based upon a distribution algorithm; transferring said programs and said data to said computing nodes for each of said parallel processing units; and executing said programs for said parallel processing units on said computing nodes.