The New York University's Ultracomputer is a significant processor design in the history of parallel computing. The system has N processors, N memories, and an N log N message-passing switch connecting them.[further explanation needed] The system supported an innovative fetch-and-add process coordination instruction, and the custom VLSI network switches could combine references (including fetch-and-adds) from several processors into a single reference, to reduce memory contention.
The machine was developed in the 1980s at the Courant Institute of Mathematical Sciences Computer Science Department, based on a concept developed by Jacob T. Schwartz.[1] Most of the work done was theoretical, but two prototypes were built:[2][3]
Ultracomputer technology was the basis for the IBM Research Research Parallel Processor Prototype (RP3), an experimental parallel computer that supported 512 processing nodes. A 64-node system was built at the Thomas J. Watson Research Center in the late 1980s.[4]