歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> PVFS中文介紹

PVFS中文介紹

日期:2017/2/27 9:37:32   编辑:更多Linux

PVFS描述 http:/parlweb.parl.clemson.edu/pvfs/desc.Html

PC集群作為一個並行平台在逐步的普及,此平台上的軟件需求也正在增長。在當今的集群中。並行計算環境下,我們找到了許多有效的軟件模塊。比如可靠的操作系統,本地存儲系統和基於消息傳遞的系統。然而,並行I/O限制了集群的軟件產品的生產。並行虛擬文件系統(PVFS)工程為Linux集群提供了高性能和可擴展行的並行文件系統。PVFS是開放原代碼的,並且在GNU公共版權許可證下發布。它無需特殊的硬件設備和內核的改動。PVFS提供重要的4個功能:×一致性的訪問名字空間。×支持現存的系統訪問方式。×數據分布在集群節點不同機器不同的硬盤上。×為應用程序提供高性能的數據訪問方式。為了PVFS易於安裝和使用。它必須提供與集群訪問相一致的名字空間,而且它必須達到我們易用的習慣方式。PVFS文件必須同時安裝到所有節點的相同目錄裡。使得所有節點能看到和訪問PVFS文件上的所有文件通過相同的配置。在已安裝PVFS文件和目錄能夠運用類似的工具,比如ls,cp和rm。為了給訪問很多客戶端上文件系統的數據提供高性能,PVFS將數據散布於許多集群的節點上,應用程序能夠通過網絡從不同的路徑獲得數據。這個消除了I/O路徑的瓶頸,且增加了眾多客戶端潛在的帶寬,或者是總和的帶寬。當傳統的系統調用機制提供了方便的數據訪問給應用程序不同的文件系統的數據文件,是使用在內核之上的方式。對PVFS來說應用程序可以以連接本地PVFS,API的方式訪問文件系統。這類庫直接使用Unix操作與PVFS服務器門連接,而不是傳遞消息給內核。這個類庫能被應用程序於與其他類庫使用。比如ROMIO,MPI-IO類庫,為了快速的PVFS訪問。

PVFS使用視圖

上面的PVFS視圖現實了PVFS系統的節點分布圖,節點被分成,計算節點,上面運行應用程序。管理節點管理元數據,I/O節點存儲PVFS文件系統的文件。管理節點與I/O節點也可能被用來計算。全看管理員。對於小的集群這些節點功能可重疊以維持資源的利用率。大的集群上I/O於metadata最好放在不同的節點上。PVFS系統有4個主要的模塊:×元數據服務器(mgr)×I/O服務器(iod)×PVFS本地API(libpvfs)×PVFS Linux內核支持第一二個模塊是在Linux節點上運行的後台進程。元數據服務器,稱為mgr,管理著PVFS文件的元數據。元數據是文件的描述,比如名字,所存放的目錄層次,所有者,和在系統節點中的分布。 通過一個自動的後台進程我們避免了許多網絡存儲的缺點。訪問中存在復雜的鎖操作為的是在很多訪問時保持文件的一致性。第二個後台進程是I/O節點或iod。I/O服務器存放和重得文件數據存儲於連接於節點上的本地硬盤上。這些服務器在本地節點上創造真實的存在的文件。它們使用傳統的read(),write()和mmap()訪問這些文件。這意味著能使用像本地文件一樣的格式來存儲數據。比如ext2,ext3。另外你可以使用軟件或硬件的RAID來支持節點容錯和創建異常大的文件。

metadata Access視圖

data access視圖

就像前面提及PVFS本地API提供用戶訪問權給服務器。這些類庫提供了分散聚集數據於用戶緩存與PVFS服務器之間的操作。這些操作對用戶保持透明的。上面圖顯示了PVFS元數據和文件操作的數據流動。對於元數據操作,應用與元數據服務器通訊通過使用類庫。對於數據操作和數據服務器被排除替而帶之的是直接於I/O服務器聯系。這是性能的關鍵。最後PVFS提供Linux內核模塊是Linux上能安裝PVFS文件系統。這使得現在的程序直接訪問PVFS文件而無需任何改動。這個支持對應用程序不是必須的使用PVFS的方法。不過它提供一個極方便的方法給影響到系統。PVFS內核模塊支持包括一個可裝載的模塊。一個可選的內核補丁排除了內核拷貝,一個後台進程pvfsd以為應用程序提供訪問PVFS文件系統。它用的是libpvfs的函數來執行這些操作。

視圖

上圖顯示了數據通過內核流向,當Linux內核支持被使用。這個機制和coda文件系統中使用方式相類似。(在我們設計的系統上coda應用作為一個實例)操作通過系統調用傳到linux的PVFS層。在這裡是一個pvfsd服務的隊列。這pvfsd通過設備文件接受操作。然後設備文件與PVFS服務器通訊取得數據,通過內核傳遞到應用程序。

應用程序接口:為了使任何文件系統可用,方便的接口必須可用。這個問題對並行應用特別重要。這些應用對文件系統有大量的需求。為了滿足這些眾多的組合,有三個接口PVFS能夠訪問。×PVFS本地API×Linux內核接口×ROMIO,MPI-IO接口PVFS本地API提供一個類似Unix接口給PVFS文件訪問。它同樣允許用戶指定文件在PVFS文件系統I/O節點條狀分布。Linux內核接口。就像早先討論過的。允許用戶可通過傳統通道訪問PVFS文件系統。這使得用戶使用所有普通的功能執行每天的數據處理,PVFS文件系統,臨時數據存儲。ROMIO執行MPI IO調用在一個輕量級的類庫中,這允許並行程序使用MPI去訪問PVFS文件,通過MPIIO接口。另外,ROM-IO使用了兩個優化:數據篩選,二階段集體I/O,這樣有利於提高性能。更多的資訊在ROMIO包和ROMIO網頁中三個優化的描述。

性能:開始二個PVFS系統最重要的目標是高性能和可測量性。集群增大時,高性能並行I/O支持非常重要。我們工作是弄清楚PVFS將持續滿足這些新的需求。這裡我們概要了PVFS本地API的性能,在chiba city集群上運行有256個雙處理器的節點。二中互連的系統,快速以太網和Myrient網絡。我們將顯示分別在這些網絡上訪問數據的性能。

視圖

在上面的圖中我們可看見快速以太網總計的性能。圖上顯示24個I/O節點後性能下降。這有可能是tcp在快速以太網上,和超出了以太網承受能力。但是網絡的結構和選擇I/O服務器布置也可能遵守一定的規則。在第二組測試中我們看Myrient上的性能。使用總Myrient帶寬與I/O節點類似來表示性能。PVFS性能攀升在已經作的測試中性能攀升表現很好。

PVFS開發人員區域:為PVFS作貢獻:我們常尋找對PVFS工程的幫助。如果你有任何主意,建議,錯誤報告,錯誤修復,或者向要一個新功能,請讓我們知道。PVFS持GPL許可證,原代碼是公開的,如果你有對你有點幫助或想簡單的跟蹤本工程請使用下文。我們打算搞一個活動的建議列表,為了PVFS研究者或對工程貢獻的人,你可以查看這個列表。

PVFS的郵件列表:我們提供二個PVFS討論郵件列表。PVFS用戶和PVFS開發者,你能參加其中一個或全部。http://parlweb.parl.clemson.edu/pvfs/pvfs-list.html用開發人員列表是最好的保持與我們聯絡的方式。如果你想為PVFS作貢獻。如果你想提供補丁或討論任何與PVFS發展有關的事情。請在這裡遞交你的郵件。 匿名CVS的訪問:我們使用CVS管理所有PVFS的原代碼。為了得到更多如何使用CVS的信息,請參考你本地支持或參觀CVS網站。我們提供了所有用戶能讀PVFS原代碼的權限。訪問CVS庫是對PVFS實驗與開發新功能感興趣的人提供的。我們無法保證CVS中的代碼都能使用,或你的數據在使用它後是安全的。我們不為那些沒有使用已知穩定的版本提供支持。注意你已經被警告了!我們經常會制作穩定的版本,你能在http://parlweb.parl.clemson.edu/pvfs/files.html找到。這個才是你要這樣的每天使用的代碼。如果,你還沒有被恐嚇嚇倒,下面列出了如何得到最近的cvs.parl.clemosn.edu的CVS版本。

檢驗最近的PVFS和PVFS內核原代碼:

cvs -d : pserver:[email protected]:/anoncvs login 任何密碼

cvs -d : pserver:[email protected]:/anoncvs co pvfs

cvs -d : pserver:[email protected]:/anoncvs co pvfs -kernal

cvs -d : pserver:[email protected]:/anoncvs logout

*升級你的合格的代碼到最近改變的CVS(這個必須在已經檢查的目錄中作)cvs -d :pserver:[email protected]:/anoncvs login (任何密碼)

cvs -d :pserver:[email protected]:/anoncvs update -P -d

cvs -d :pserver:[email protected]:/anoncvs logout

如果你打算經常這樣作,你可能想創建別名,腳本和特殊的CVS客戶端配置作這些,而無需這樣麻煩。

提供補丁如果你有個PVFS的補丁或新特性,我們將接受補丁對照最新的版本或最近的CVS代碼。請提交這樣的補丁在PVFS開發列表上,如果你還弄不清楚如何格式化你的補丁,你可以看以下補丁命令的參考頁。

作者:pvfs www.redcluster.ne




Copyright © Linux教程網 All Rights Reserved