并行計算機(pvm)是用于網絡并行計算機上的軟件工具。設計它的目的是將異構的計算機網絡連接起來,使它使用起來就像一組分布式的并行處理器。
發展歷程
pvm最早由美國的田納西大學,橡樹嶺國家實驗室以及埃默里大學開發成功。后來,田納西大學將其重寫,并于1991年發布了版本2。版本3于1993年發布,支持容錯以及更好的可移動性。
PVM現在仍在繼續發展中,雖然隨著它的成熟與穩定意味著新版本的更新會逐漸的慢下來。可以說,正是由于它,我們向分布式計算和網格計算邁出了重要的一步。當今,它處在廣泛的應用中。而且新的結合產物也應運而生(例如Perl的Parallel::PVM 模塊)。
系統特點
PVM(并行虛擬機)是一個軟件包。通過它,我們可以組成一個異構的系統,它使用起來就像一個單一的但能力強大的并行計算機,而它本身可以由一些Unix或windows的計算機組成。該軟件包的移植性很強,其源碼可以通過相關研究單位的網絡實驗室免費獲得。它被編譯來幾乎可以從小型移動設備到克雷大型機的應用。
PVM使得人們可以應用他們現成的計算機硬件來解決大型的問題,而花費并不會增加很多。世界上由上百的網站應用PVM技術來解決各個行業的重要問題,此外,PVM還被用作教授學習并行編程的教學工具。
PVM系統支持多用戶及多任務運行,多個用戶可將系統配置成相互重疊的虛擬機,每個用戶可同時執行多個應用程序,易于編程。PVM支持多種并行計算模型,用戶使用PVM提供的函數庫可進行并行程序或分布式程序的設計工作,使用傳統的c語言和Fortran。系統提供了一組便于使用的通信原語,可實現一個任務向其它任務發消息,向多個任務發消息,以及阻塞和無阻塞收發消息等功能,用戶編程與網絡接口分離。系統還實現了通信緩沖區的動態管理機制,每個消息所需的緩沖區由PVM運行時動態申請,消息長度只受結點上可用存儲空間的限制。PVM提出了進程組的概念,可以把一些進程組成一個進程組,一個進程可屬于多個進程組,而且可以在執行時動態改變。支持異構計算機聯網構成并行虛擬計算機系統且易于安裝、配置。PVM支持的異構性分為三層:機器層、應用層和網絡層。也就是說,PVM允許應用任務充分利用網絡中適于求解問題的硬件結構;PVM處理所有需要的數據轉換任務。具有容錯功能,當發現一個結點出故障時,PVM會自動將之從虛擬機中刪除。
參考資料 >