Во компјутерската наука, дистрибуирана меморија се однесува на повеќе-обработувачкки компјутерски систем во кој секој обработувач си има своја приватна меморија. Компјутерски задачи може да се извршуваат само на локалните податоци, а доколку има потреба од далечински податоци, мора да комуницира со еден или поцеќе далечински обработувачи. Спротивно на тоа, една заедничка меморија нуди единствен мемориски простор кој се користи од страна на сите обработувачи. Обработувачот не мора да биде свесен каде се наоѓаат податоците.

Архитектура
-----------

Во дистрибуираните компјутерски системи има обично обработувач, меморија и некоја форма на интерконекција што дозволува програмите на секој обработувач да комуницираат меѓу себе. Интерконекцијата може да се организира како врска од точка до точка или посебен хардвер може да обезбеди размена. Мрежната топологија е клучниот фактор во одредувањето колкав е размерот на повеќе-обработувачкката машина. Врската помеѓу јазлите може да се спроведе користејќи некои стандардни мрежни протоколи (на пример Етернет), користејќи беспоке мрежни линкови (како на пример во Transputer), или користејќи двојно преносни мемории.

Програмирање на дистрибуираните мемориски машини
------------------------------------------------

Клучното прашање во програмирањето на дистрибуираните мемориски системи е како да ги дистрибуираме податоците преку меморијата. Проблемот е решен, податоците можат да се дистрибуираат статички или со движење низ јазлите. Податоците можат да се движат при побарувачка или можат да се наметнуваат на новите јазли однапред.

Како пример, ако проблемот може да се опише како цевка каде податокот Х се обработува во секвенци преку функциите F,G,H итн.(резултат е h(G(F(X)))), потоа ова може да се изрази како дистрибуиран мемориски проблем каде податокот се пренесува прво до јазолот којшто ја врши F, по што резултатот поминува на вториот јазол што ја пресметува G, и на крај на третиот јазол што ја пресметува H. Ова исто така е познато и како систоличка пресметка.

Податоците можат да се чуваат статички во јазлите во повеќето пресметки што се извршуваат локално, и се пријавуваат само промените на рабовите на јазлите, на другите јазли. Промер за ова е симулацијата каде податоците се моделираат со помош на мрежа, и секој јазол симулира мал дел од голема мрежа. На секоја промена, јазлите ги информираат сите соседни, за новите податоци на рабовите.

Дистрибуирана и Поделена Меморија
---------------------------------

Слично во дистрибуираната поделена меморија секој јазол од групата, има пристап до голема поделена меморија, поради ограничената не-делива приватна меморија што ја има секој од јазлите.

Предноста на (дистрибуираната) поделена меморија е тоа што нуди единствен адресен простор каде може да се најдат сите податоци.
Предноста на дистрибуираната меморија, е тоа што ги исклучува натпреварувачките услови, и го тера програмерот да рзлмислува за дистрибуцијата на податоците.
Предноста на дистрибуираната (поделена) меморија е тоа што, многу е полесно да дизајнираш машина што подредува по алгоритам.
Дистрибуираната поделена меморија го крие механизмот на комуникација но не и латентноста на комуникацијата.

ен:Distributed memory