平行電腦中各臺處理機通過傳遞消息包來實現通信和同步的機制。在消息傳遞多處理機系統中,每臺處理機有各自的局部記憶體和高速緩衝記憶體,每臺處理機隻能訪問自己的局部記憶體,處理機間的通信通過消息傳遞來進行。與消息傳遞對應的是共用存儲。

  消息傳遞模型在平行計算領域中得到廣泛應用,有如下優點:①硬體適用範圍廣。消息傳遞模型不但在平行電腦中工作良好,而且適用於機群系統(許多處理機通過通信網路連接而形成的系統)。②功能強。消息傳遞遞提供描述並行算法的全部功能,還提供數據並行模型不提供的控制功能。③性能好。現代中央處理器的有效利用需要存儲層次結構的有效管理,消息傳遞通過顯式控制數據局部性實現這一點。④可擴展性好。從幾個或幾十個結點的機群到成千上萬個結點的超大型計算機,體現瞭消息傳遞的可擴展性。

  消息傳遞的主要缺點是需要編程人員進行細致的數據分佈和負責消息傳遞的進行。編程人員必須顯式實現數據分佈,進程間通信和同步;解決數據依賴,避免死鎖和競爭,編程復雜度比共享存儲要大得多。

  為瞭獲得良好的並行性能,首先要求避免或減少通信,增加數據局部性,減少不必要的同步,加細並行粒度;其次盡量保持通信與計算的交疊(部分重疊)來容忍通信,如采用非阻塞或異步的消息傳遞例程;最後還須減小通信的開銷,如減少緩沖區拷貝次數,采用精簡的通信協議等。