Distributed memory is a concept used in parallel computing. It means that in a multi-processor system each processor has its own memory. This requires that computional tasks have to be distributed on the different processors for processing. After the processing the data has to be reassembled.
The related term is Distributed shared memory, a model in which in addition to private memories of the nodes there exist large, conceptually shared memory (though in reality such memory may be physically distributed between many different nodes, hence the name).
Distributedmemory describes the model of the commodity cluster, which has a large number of nodes, each with its own processor(s), system disk, and networking.
Distributedmemory machines are best suited to "coarse-grained" problems, where each node can compute its piece of the problem with less-frequent communication with adjacent nodes.
An example of a distributedmemory architecture is the $5.2 million Terascale Project cluster at Virginia Tech.
Distributed computing is decentralised and parallel computing, using two or more computers communicating over a network to accomplish a common objective or task.
A heterogeneous distributed system is made up of different kinds of computers, possibly with vastly differing memory sizes, processing power and even basic underlying architecture.
Distributed computing differs from cluster computing in that computers in a distributed computing environment are typically not exclusively running "group" tasks, whereas clustered computers are usually much more tightly coupled.