Present invention unity parallel processing systems and methods facilitate
flexible utilization of sequential program applications in a distributed
multi-computer parallel processing environment. The new unity parallel
processing architecture enables multiple processing nodes (e.g., SMPs) to
perform multi-thread processing within the multiple processing nodes
while providing a shared virtual global memory space. Symmetric
multiprocessors run shared memory applications with modified runtime
guidance directives that permit the memories to emulate a virtual global
memory across the plurality of symmetric multiprocessors. Within each SMP
node, programs utilize multiple threads according to directives and
library calls. Across multiple SMP nodes, each SMP node is treated as a
single process with one-way communication to other SMP nodes. Portions of
the program data are stored in memories associated with the SMP nodes and
communication of the program data across multiple SMP nodes is controlled
by unity compiler directives.