No Remote Memory Access (abbreviated as NoRMA) is a computer memory architecture for multiprocessor systems, given its name by Rashid (1987).[1] In a NoRMA architecture, the address space globally is not unique and the memory is not globally accessible by the processors. Accesses to remote memory modules are only indirectly possible by messages through the interconnection network to other processors, which in turn possibly deliver the desired data in a reply message. The entire storage configuration is partitioned statically among the processors.
The advantage of the NoRMA model is the ability to construct extremely large configurations, which is achieved by shifting the problem to the user configuration. Programs for NoRMA architectures need to evenly partitioning the data into local memory modules, ensure consistency of software caches to enforce the desired consistency model, handle transformations of data identifiers from one processor's address space to another, and realize a message-passing system for remote access to data. The programming model of Norma architecture is therefore extremely complicated.