三好技巧网

详解如何使用固态硬盘才能发挥出固态硬盘的最大性能(图)

时间:2011-12-22 16:40来源:电脑报 作者:admin 点击:
固态硬盘可不像传统机械硬盘那么简单,就算买到了高性能的固态硬盘,不会用的话,同样无法发挥其性能。怎样才能玩好固态硬盘呢?

 


    固态硬盘技术流
    对于机械硬盘来说,通常我们是关注转速、缓存和容量(只有少数时候需要关注固件版本),在规格参数相同的情况下,各品牌的机械硬盘性能差别都不会太大。不过对于固态硬盘来说就完全不是一回事了,由于固态硬盘本身没有一个行业内的明文规范,再加上它使用的是闪存颗粒,数据结构和存储方式与机械硬盘完全不同,因此不同品牌的固态硬盘产品的规格有很大的不同,单凭容量、颗粒数量和缓存是无法准确判断固态硬盘性能的。固态硬盘的性能表现不仅和容量、颗粒数量和缓存有关,而且和是否支持Trim技术、是否支持Garbage collection技术、操作系统以及驱动程序的支持程度有关。


    Trim技术
    当一个文件被删除后,操作系统其实并没有删除数据,事实上,它只是在硬盘前的索引区里标记这块文件占用的区域为可覆盖的,所以下次数据将要再次写入的时候,可以覆盖写入这块被标记的区域。普通的机械硬盘可以直接覆写旧的区域,而固态硬盘进行的读写动作却与机械硬盘完全不同,而这就是固态硬盘在使用一段时间后性能直线下降的原因:在全部闪存被写满一遍后,没有从未被写过的块可以被使用的情况下,闪存不会直接覆写区域,而是必须进行擦除之后,才能再次被用于写入。


    在固态硬盘闪存内,数据存储一般是以页(page)为最小单位存储的(典型的为4KB),而128个页组成了一个块(block),数据可以以4KB大小的页来读取和写入,但却只能以512KB(128页)的块大小来删除。当读取数据或者写入到一个没有被使用过的page上时,固态硬盘的速度是很快的,但是覆写数据的话,只能覆写数据到之前被操作系统标记为删除的区域:首先要把整个512KB 块复制进缓存里,然后在缓存里删除这个4KB页,替换成新的数据,接着清空整个闪存内的这个512KB区域,并从缓存里把新的数据写回去。如果你需要同时覆写很多的块,写入速度就会直线下降。


    为了解决这个问题,Trim技术就被开发了出来,通过Trim指令,操作系统在进行删除动作后,会通知固态硬盘的控制芯片该资料区块已可删除,固态硬盘便会在系统空闲时进行数据擦除动作,不让无用资料一直占用NAND Flash,这样在下一次写入数据时就不用再等待数据块擦除,而是能够直接进行写操作了,磁盘写入性能能够大幅提高。


    而目前只有Windows7和Windows2008 R2操作系统才支持Trim技术,所以在选择固态硬盘时我们不仅要选择支持Trim技术的固态硬盘产品,而且还要保证安装的是主流的Windows7或Windows2008 R2操作系统。


    Garbage collection技术
    Garbage collection(垃圾回收技术),是固态硬盘专用的磁盘碎片整理技术,由于传统的磁盘碎片整理对固态硬盘来说完全没有用处,如果对固态硬盘进行了磁盘碎片整理反而会降低固态硬盘的性能,只有微软的下一代操作系统——Windows8才支持对固态硬盘的磁盘碎片进行整理。因为读写机制与机械硬盘不同,对于目前的操作系统来说固态硬盘必须使用自己的磁盘碎片整理技术。Garbage collection技术的原理是在SSD空闲时,全盘扫描有效的页并合并整理起来变为一个包含全部有效页的块,而那些无效的页和块都将被完全的清除。Garbage collection技术本身并不能大幅度改善固态硬盘性能,但与Trim相结合之后,就能事半功倍,让固态硬盘能够长时间保持良好的性能状态。


    Garbage collection技术经常被厂商用来“忽悠”用户,因为所有固态硬盘都支持被动GC技术,而真正值得关注的是闲置Garbage collection技术(IGC),就是在固态硬盘闲置的时候进行碎片整理,和Trim结合能让固态硬盘尽量保持最佳性能状态。

    驱动要给力
    明白了固态硬盘的一系列技术之后,大家都能够知道Trim技术的重要性了,但很可惜,Trim机时只有在AHCI模式下才能发挥作用。如果利用固态硬盘组建RAID,那么现有的操作系统(包括驱动程序)将不再把固态硬盘视为可Trim的,因此组建固态硬盘RAID将使Trim技术失去作用。原来很多发烧友为了追求RAID的高速和Trim的性能不得不在组建固态硬盘RAID一段时间后备份数据,取消RAID,重新Trim后在组建RAID,这样的操作是在非常麻烦。


    不过最近,固态硬盘RAID支持Trim的曙光终于出现了,Intel宣称将在存储驱动RST 11.5正式版中支持在RAID 0中开启Trim。只可惜我们还不知道Intel如此给力的驱动什么时候才会正式发布。


    状态决定性能
    有很多很多购买了固态硬盘的用户在使用过程中发现自己的固态硬盘速度根本达不到厂商宣称的最大值,而且差距还很明显。其实这并不是厂商的问题,和机械硬盘不同的是,受限于闪存本身的擦写机制,固态硬盘的性能状态分为“出厂态”、“GC(垃圾回收)态”、“稳定态”三种,当固态硬盘在写入数据并使用一段时间之后,其状态已经不是性能最好的“出厂态”了,自然会出现性能下降的现象。


    对于大多数用户来说,“GC态(写入了数据并有GC动作的存在)”更能反映固态硬盘的正常性能,而厂商标注的大都是固态硬盘“出厂态”的性能。那么,手中的固态硬盘如何了解它的真实性能呢?


    鉴别固态硬盘状态
    首先,在电脑的主系统盘上安装WindowsXP系统(目的是关闭Trim),接下来把新买的固态硬盘挂在从盘的位置,先不分区,直接运行HD Tune。先进行读测试,再进行写测试,这时你会发现它所表现出来的性能与厂商标注的值非常接近——此时表现的是主控芯片的性能,而不是NAND Flash芯片的性能。

 


出厂态下的随机读取成绩

 


写满数据后的随机读取成绩


    接下来,再多运行几次写测试(或者自行将固态硬盘分好区,拷贝满数据后删除分区),然后再正式运行一遍读写测试(依然在没分区的情况下),这时候你就会发现测试成绩相对出厂态有明显降低了,这个成绩体现的就是NAND Flash的正常水平了,也就是我们平时使用时固态硬盘的性能水平。

    小提示
    前面的测试关闭Trim功能只是为了考查固态硬盘内NAND Flash芯片的真实性能,但我们在实际使用中必须开启Trim,对于普通用户来讲就是一定要安装Windows7以及对应主板芯片组驱动,这样可以改善固态硬盘在长期读写后性能下降的问题。另外,为了用上Trim,必须在主板BIOS中打开SATA控制器的AHCI模式。


    分区要对齐
    还有的用户会发现自己的固态硬盘和别人的型号、容量完全一样,但读写性能差距相当大,这又是为什么呢?传统硬盘的基本储存单位是扇区,大小是512bytes;而固态硬盘的基本读写单位是块,常见大小为2KB/4KB。操作系统读写数据的基本单位是簇,在对硬盘进行分区操作时,系统通常是以512bytes/扇区为单位的,为了保持BIOS和操作系统相容性,固态硬盘也必须将每个块通过控制芯片模拟为若干个512bytes的扇区。由于分区的时候分割的位置可由任何扇区开始,如果在分区的一开始就没有对齐固态硬盘块的边界,则该分区里的簇也会变成未对齐的状态。


    比如Windows XP的分区程序是从第63个扇区开始的,也就是第31.5KB处,由于这个值不能被2KB/4KB整除,对应到固态硬盘在块之上模拟出的扇区时,正好会从某个block的后段开始,一旦操作系统对某一个未对齐的簇进行写操作,在固态硬盘上就会变成需要写入到两个实体块中。无形当中也就促使固态硬盘不得不增加一倍的操作量,性能下降也就是理所当然的了。因此只要固态硬盘上的分区处于未对齐状态,增加了无谓的SSD额外写入动作,固态硬盘的性能就不能完全发挥,而且未对齐的分区还会造成固态硬盘在连续写入小文件时,系统还可能是一顿一顿的。


    因此,固态硬盘的分区操作必须是在Windows7下进行,或者通过专用的固态硬盘分区工具来进行分区,以达到分区对齐的目的,有效提高固态硬盘的读写性能。


    小贴士:如何检查固态硬盘分区是否对齐
    通常未对齐分区的固态硬盘都是在Windows XP下分区的,我们可以通过AS SSD Benchmark这款测试软件来检查固态硬盘的分区是否对齐。启动AS SSD Benchmark后,在上面的下拉菜单中选定固态硬盘所在的分区,查看硬盘型号下方的分区起始位移,如果看到绿色的“OK”,就说明此固态硬盘的分区处于对齐状态,如果有红色“Bad”字眼,就说明此固态硬盘的分区处于非对齐的状态。


    固态硬盘应用实测
    对于购买了固态硬盘的用户来说,如何用好固态硬盘是他们最关心的事情。从应用方案来说我们可以将固态硬盘分为以下几种应用方案:固态硬盘作系统盘,机械硬盘作数据盘;机械硬盘做系统盘,固态硬盘安装常用软件;机械硬盘做系统盘,固态硬盘开启Readyboost;用固态硬盘和机械硬盘做带区卷(软RAID);用两块固态硬盘做RAID 0;用两块固态硬盘做带区卷(软RAID)。


    这几种方案各有优点和缺点,实现的方案也各不相同,前四种方案只需要一块固态硬盘,而后两种方案需要两块固态硬盘才能实现。我们将会一一测试这6种方案,测试Windows7启动时间、大小文件复制速度、文件查找速度、《魔兽世界》载入时间等项目,看看最适合消费者的方案是哪一种。


    为了不给固态硬盘的数据写入造成瓶颈,我们特地用4GB内存虚拟为硬盘,将要测试写入的5000个4KB小文件和一个4000MB的大文件全部复制到内存虚拟硬盘中,再向固态硬盘进行写入,测试写入时间。

顶一下
(1)
25%
踩一下
(3)
75%

------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
栏目列表
推荐技巧
无觅相关文章插件,快速提升流量