close

【電腦技術】(轉)最具有權威性的虛擬盤終極教程(三)|安心電腦維修聯盟

文章出處:http://bbs.icafe8.com/thread-58821-1-1.html

 

 

第三篇:<硬盤中的驚天大秘密!>


既然要談論虛擬盤,那我們就先從硬盤開始說起
目前市面上可以買到的硬盤大體分為三種:
1. 普通的sata硬盤,最為常見,性能一般,轉速7200轉,容量從80G-2000G不等,價格低廉.無需專用接口,一般主板都支持.
2. 高級一些的SAS硬盤,屬於服務器配件,需要專門的SAS接口,這種接口在高端的服務器主板上才會有,普通的主板要用sas硬盤的話,可以買專門的sas接口RAID卡.價錢較貴,一般147G的硬盤就要1K多了,速度比普通sata硬盤要快一些.
3. 新型的固態硬盤,也稱為SSD,這種硬盤使用flash進行存儲,沒有機械結構,最大的優點是尋道時間非常低,現在最快的SSD,已經可以達到250M的讀取速度,200M的寫入速度,性能全面超過以前的老式硬盤,缺點是容量太小,價錢較高.一般120G的SSD就要賣到2-3K了.固態硬盤目前比較多使用在高級的服務器上,部分高端的筆記本也會使用一些SSD.

第一部分:普通的SATA硬盤:
硬盤的工作原理,可以從這段視頻中清晰的看到

http://player.ku6.com/refer/zCTB6Fmc2HGRPxko/v.swf
這段視頻展示了我們在刪除,複製粘貼,快速格式化時,磁頭的相應工作情況,印象最深的是磁頭瘋狂擺動的樣子.

我們先來了解一些硬盤的基本概念,如圖是硬盤的盤片的示意圖:

5.jpg  

(圖3-1:硬盤中的盤片示意圖)

磁道
磁盤在格式化時被劃分成許多同心圓,這些同心圓軌跡叫做磁道(Track)。 

扇區
操作系統以扇區(Sector)形式將信息存儲在硬盤上,每個扇區包括512個字節的數據和一些其他信息。 一個扇區有兩個主要部分:存儲數據地點的標識符和存儲數據的數據段, 標識符就是扇區頭標,包括組成扇區三維地址的三個數字:扇區所在的磁頭(或盤面) 、磁道(或柱面號)以及扇區在磁道上的位置即扇區號。


簇就是更大的扇區,它可以是一個扇區、也可以是2個、4個、8個等等,它究竟有多大是在高級格式化的時候決定的。 把相鄰的若干個扇區組合起來就是一個簇,和扇區一樣,一個簇內不允許存在兩個文件,因此當儲存一段比單個簇的容量還要小的數據時,會浪費一些儲存空間。 比如鏃是64K,那麼那怕只有一個字節的文檔,也會佔用64K的空間,對於QQGAME之類的小文件極多的遊戲,浪費的空間是很大的.
簇就是我們在格式化的時候,可以選擇的區塊大小,從512B---128K不等,如果我們選擇比較大的簇,空間會比較浪費,但是虛擬盤出盤的流量會大為減少.如下圖:

 

6.jpg  

(圖3-2:虛擬盤出盤數據量)

這是個1.5的硬盤,幾乎裝滿了遊戲,但是出盤僅僅只要讀取3M數據,這個分區是用64KB為單位進行格式化的,如果使用32KB的簇,那麼出盤流量就會變成2倍:6M,如果使用默認的方式格式化(512B),那麼出盤的流量就會達到300多M,這樣的數據是很恐怖的,對分區硬盤大的的服務器會導致出盤的效率極度低下.
來看看這麼一張截圖,是用HDTUNE測試硬盤基準測試:

7.jpg  

(圖3-3:HD TUNE文件基準測試圖)
對一個硬盤分別採用從512B,1K,2K…8M等從小到大的不同區塊大小,進行測試讀寫速度,總的速度來看是逐漸升高的,到64K以後,就基本持平了,對於過小的區塊大小,磁盤讀取後數據的處理時間還趕不上磁頭讀取的速度,因此小區塊造成的速度衰減是非常明顯的,我們在後面的測試當中,大部分都基於64K的區塊,這樣反應的數據比較有價值.1M,8M這樣的區塊大小我不會在測試中採用,對真實應用的指導性不大,因為我們一般的虛擬盤都是基於512B-64K之間的大小來進行格式化的.
區塊大小對於虛擬盤的測試會產生非常大的數據偏差.在客戶機上測試網維大師的虛擬盤,用512K區塊時,可以達到90M以上的讀取速度,但是在64K時,只有55M的讀取速度.常常在論壇上看見很多比拼虛擬盤或者無盤的讀取速度,很多人都沒​​有註意這個區塊大小的問題,不同區塊大小造成的測試結果偏差導致很多比拼失去了公平的意義.
Ø 平均尋道時間(Average seek time):指硬盤在盤面上移動讀寫頭至指定磁道尋找相應目標數據所用的時間,它描述硬盤讀取數據的能力,單位為毫秒。 

Ø 平均潛伏時間(Average latency time):指當磁頭移動到數據所在的磁道後,然後等待所要的數據塊繼續轉動到磁頭下的時間,一般在2ms-6ms之間。 

Ø 平均訪問時間(Average access time):指磁頭找到指定數據的平均時間,通常是平均尋道時間和平均潛伏時間之和。 平均訪問時間最能夠代表硬盤找到某一數據所用的時間,越短的平均訪問時間越好,7200轉的SATA硬盤一般在11ms-18ms之間,典型的15000轉SAS硬盤一般在5ms-8ms之間.現在,一般在說的平均尋道時間往往指的就是指平均訪問時間,我們在後面也用平均尋道時間來代表這個平均訪問時間.

Sata硬盤的性能取決於2大指標:
一是硬盤的轉速,轉速越高性能越好,一般的sata硬盤轉速都是7200轉,也有少量的5400轉產品,多用在筆記本上,西數還有一種特別的迅猛龍硬盤,是一萬轉的,盤片是2.5寸的,比普通硬盤的3.5寸盤片小很多,轉速高,盤片小,使得迅猛龍硬盤在尋道時間上比普通硬盤縮短了近一倍的時間,實際性能已經很接近於sas硬盤了.
,二是磁盤的單碟容量.存儲密度的提高對性能提升是很有好處的,在磁頭劃過同樣的距離時,密度越高的磁盤,讀取的速度自然越多.這點對順序讀取的性能提升尤其非常明顯.


普通的硬盤有多快呢?
我們先看一個截圖: 

8.jpg  

(圖3-4:HD TUNE測試希捷11代盤順序讀取)

硬盤是希捷11代的1.5硬盤,單碟容量500G,是當今最快的SATA硬盤之一.(因為測試的時候服務器還在提供負載,所以曲線不是很平滑).這個測試顯示的是硬盤連續讀取的狀態.使用的工具是HD-TUNE PRO 3.50版本.
從這個圖看,該硬盤的外圈速度已經達120MB/S以上,速度應該是非常理想了,但是我們來看另一個測試:

9.jpg  

(圖3-5:HD TUNE測試希捷11代盤隨機讀取)

還是那個硬盤,這次我們測試的是隨機讀取的速度,在硬盤中隨機選取N個小點,每個小點代表64K的數據.
和上面連續讀取的條件一樣,都是讀取64K的區塊,結果速度降到了3.577MB/S,相差了近30倍.
為什麼有如此大的差異呢?
因為硬盤的性能指標中,讀取數據的性能遠大於尋找數據的性能.
讀取一個64K的數據,硬盤只需要1/2000秒,也就是0.5MS(毫秒)
但是要找到這個64K的數據,硬盤需要花費1/57秒的時間,也就是17MS.
這兩個性能相差了30多倍.如果硬盤花在讀取數據上的比例多,性能就會很好,如果硬盤花在尋找數據的比例多,那性能就會變的非常糟糕.

那麼,在實際應用當中,哪個數據更有參考意義呢?
我的結論是硬盤的隨機讀取速​​度才代表硬盤的真正速度,因為實際在網吧裡的應用大部分都是隨機讀取的過程,為什麼這麼說呢?原因有以下幾點:
1) 客戶機上的硬盤很難將文件排列整齊,隨著硬盤滿了刪,刪了寫,滿了又刪,長久以往,硬盤上的遊戲難以按順序排列,而且碎片很多,而網吧的環境又很難常常去整理硬盤,如果不幸用的是300G以上的硬盤,那整理的過程是會讓人崩潰的.
2) 就算是初次刻盤,將文件都好好的排好了,也不會是連續讀取,因為基本沒什麼遊戲會對硬盤的讀取順序進行優化,多數的遊戲裡面文件排列的規則都是按照開發人員易於管理的方式進行排列,比如素材這類的放在一起,地圖這類的放在另一個文件夾裡,人物的畫面又放在其他文件夾裡等等,這樣的遊戲在讀取的時候,必然是地圖要讀,素材要讀,界面要讀,人物圖片要讀,這必然是”隨機讀取”的過程.
3) 對硬盤來說,就算是讀取連續文件,但是如果存在2個或者2個以上的讀取線程,那就馬上變成隨機讀取了,硬盤的磁頭會不停的移動,一會去內圈為A進程讀取,馬上又去外圈為B進程讀取.在XP開機剛進桌面的時候,因為進程很多,這時候磁盤速度會變的奇慢無比.
4) 隨機讀取的衰減是非常驚人的,100%的順序讀取很罕見,多半都是部分是順序的,部分是隨機的,只要有少量的隨機讀取的比例,磁盤的性能就會急速的衰減.

說了這麼多,很多朋友肯定還是不信,那麼我們來看看真實的數據吧.

10.jpg  

(圖3-6:PCMARK測試intelSSD和希捷11代盤)

這個圖是天極網做過的一個評測,用最愛生活愛順網的機器(愛妻+愛生活愛順網顯卡),再超頻到極限以後測試的結果,以盡可能好的機器來挖掘硬盤的潛力.
分別用INTEL的固態硬盤和希捷11代盤來測試PCMARK VANTAGE.顯示的數值是2個硬盤在運行不同的測試項目時讀取硬盤的平均速度.INTLE的固態硬盤是當今最快的固態硬盤之一,讀取速度達到250MB/S,寫入速度也能達到200MB/S以上,而且固態硬盤的特質就是隨機性能和順序讀取性能相差無幾.
仔細看看這個圖,是很有啟發的,我們來看Gameing這一項(第3行),在運行遊戲項目的時候,固態硬盤讀取的平均速度是95MB/S,而普通硬盤只有10.5MB /S.
在SSD的測試當中,硬盤不是系統的瓶頸,瓶頸是機器本身的處理性能,包括cpu和顯卡,這說明這個系統的處理能力是95MB/S.
在SATA硬盤的測試當中,雖然系統能達到95MB/S的處理能力,但是硬盤只能輸出10.5MB/S.這說明了,這個測試中,硬盤只能達到10.5MB/S的讀取速度.

因為PCMARK VANTAGE只能在VISTA上運行,因此我們沒有去複現這個測試,基於XP,我們用PCMARK05做了以下的對比測試:

11.jpg  

(圖3-7:PCMARK05測試OCZ的SSD)

 


這個圖是上一節出現過的,採用網吧內普通的機器測試,這個OCZ的固態硬盤是去年夏天購買的,是OCZ第一代的SSD,採用JB的控制芯片.對比一下希捷硬盤的測試結果:

12.jpg  

 

 

(圖3-8:PCMARK05測試普通sata硬盤)

結果差異雖然不如天極測試的明顯,但是結論是一致的.
測試中SSD硬盤在XP啟動,遊戲載入,普通應用這3項測試上能達到20-30MB/S的讀取速度,這說明客戶機的CPU和顯卡的處理性能基本就在20-30mb/s這個水平上.
普通的sata硬盤在XP啟動,遊戲載入,普通應用這3項測試上只有7-8MB/S的讀取速度.這說明,硬盤的讀取能力僅有7-8mb/s的水平.

這就充分說明了:在遊戲測試的項目中,硬盤去讀取這些數據多數都是”隨機讀取”的狀態,對固態硬盤來說,隨機讀取和順序讀取幾乎是一樣的,所以衰減很少,可以全速讀取,但是對普通的硬盤來說,做隨機讀取需要消耗大量的尋道時間,實在是快不起來啊!
在圖3-5的測試當中,硬盤需要花費95%以上的時間來進行尋道,只有5%的時間在讀取數據.在各種不同的應用當中,表現的情況是隨機讀取的情況佔大多數,在網吧中游戲是最主要的應用,普通的硬盤在遊戲的表現中是非常不理想的.
因為隨機讀取性能更能代表硬盤本身的性能,所以我們在後面的測試大部分都是採用隨機讀取的測試結果.
總結:普通的7200轉SATA硬盤,目前性能最好的已經達到了單碟500G容量.
用64K區塊進行測試,這些硬盤順序讀取速度在外圈都超過100MB/S的速度,但是隨即讀取的速度一般只在3-4MB/S之間,而實際應用中,隨機讀取的速度決定了硬盤的快慢表現.
下一節,我為大家說說SAS和SSD硬盤,神秘的SAS和SSD硬盤對很多人來說就是昂貴和性能的代名詞,究竟如何呢?下回分曉.

(未完待續)

 

arrow
arrow

    安心電腦維修聯盟 發表在 痞客邦 留言(0) 人氣()