- 2012-9-21 16:19:54
- 类型:原创
- 来源:电脑报
- 报纸编辑:王诚
- 作者:
测试平台
处理器:Core i7 3770K
内存:宇瞻DDR3 1600 4GB×2
显卡:蓝宝石Radeon HD7750
主板:映泰TZ77XE3
系统盘:希捷酷鱼7200.12 1TB
固态硬盘:SF-2281 240GB SATA 6Gbps
电源:航嘉X7 900W
操作系统:Windows7 64bit旗舰版
测试软件:AS SSD Benchmark 1.6
最近固态硬盘(SSD)的价格一路走低,256GB的固态硬盘甚至降到千元以下,128GB的产品也早早跌破700元大关,惹得很多玩家出手购买。不过,由于物理结构和工作原理上与机械硬盘不同,固态硬盘用起来也有很多特别的讲究。之前我们也讲过很多固态硬盘优化的技巧,而本期DIY研究所的内容,是固态硬盘上的数据要如何分配(分区大小、数据存储大小)才能达到更好性能的话题。
基础知识补充
●为什么固态硬盘会越用越慢?
原因:有别于机械硬盘的特殊写入方式
这要从它有别于机械硬盘的写入方式说起。对于机械硬盘来说,在已经写入数据的区域更新数据只需要把新数据覆盖上去就行,而固态硬盘则需要先把原存储单元里的数据擦除,才能往里写新数据。原因就在此,新买的固态硬盘第一次往里写数据的时候,所有单元都是空的,自然不用擦除,而使用一段时间之后,被用过的单元越来越多,数据碎片也越来越多,刷新数据的时候需要更多的擦除操作,写速度自然就慢下来了。
●垃圾回收技术(Garbage Collection,简称GC)
作用:让固态硬盘性能衰减速度变慢
从固态硬盘的工作原理来看,如果不进行适当的碎片整理,长时间使用后性能会大幅度下降,但其实目前主流的固态硬盘产品都带有这样的“碎片整理”功能来减小这个影响,而且是由主控芯片自动完成的,不需要操作系统干预。这样的“碎片整理”功能我们把它叫做GC(垃圾回收)。详细讲解GC的工作原理需要很大的篇幅,这里我们简单地把它总结为把尽量把零碎的数据转移到一起,空出更多的干净Block(固态硬盘的存储单元)来减少写入数据时的擦除操作。GC分为被动式(只在写入前工作)和闲置式(主控芯片闲置时自动工作),转移的目标存储单元可以是固态硬盘上任何一个空闲的Block,包括未分区区域。
●TRIM功能
作用:提升GC效率,减少固态硬盘损耗
TRIM是和GC功能搭配使用的技术(主流固态硬盘和Windows7以上操作系统支持),目的就是在GC操作之前,告诉主控芯片哪些是无效数据,不用去对它进行GC操作,从而提高了GC效率和减少了对闪存颗粒的擦除操作,对延长固态硬盘的寿命也有好处。
不同分区方案的性能对比
一般来说,256GB容量以下的固态硬盘,要么就分一个区(这种情况笔记本用户居多,毕竟固态硬盘和机械硬盘容量还是差很多,Windows7以上操作系统和各种必须装C盘的程序又特别占地方……),要么就分两个区。两个区以上的情况就少了,除非你够发烧,买的512GB或1TB的固态硬盘。
那么,分一个区和分两个区、数据要怎么分配等等有什么讲究就是我们研究的内容。我们选择了一块使用SF-2281主控芯片的240GB固态硬盘作为实验品,分别针对单个分区的大小、两个分区的比例以及大小等情况进行测试。
单分区方案
此分区方案包括两种,一种是240GB容量全部分为一个区(实际容量大约为238GB),一种是分一个120GB的区,剩下的部分不分区(留作固态硬盘自动GC用)。在这两种情况下,我们分别测试空盘和几乎装满数据下的性能来进行对比。
单分区方案性能对比 | |||||
120GB分区 (空) | 120GB分区 (115GB占用) | 240GB分区 (空) | 240GB分区 (237GB占用) | ||
AS SSD Benchmark 1.6 | 顺序 读/写 | 315MB/s/246MB/s | 305MB/s/257MB/s | 301MB/s/300MB/s | 307MB/s/ 最低141MB/s (写速度不稳定) |
4KB 读/写 | 18MB/s/53MB/s | 18MB/s/50MB/s | 15MB/s/52MB/s | 16MB/s/50MB/s |
首先要说明的是,几MB的差距我们都视作正常的性能起伏,但在237GB容量占用下的时候,可以看到持续写速度最低的时候比正常写入速度的一半还要低。值得一提的是,我们在空盘模式下反复进行测试,数据都没有太大变化,而在数据占用达到237GB模式下测试时,性能起伏很大,最低持续写速度如表中的141MB/s,而偶尔又能跳变到250MB/s左右,这应该是频繁的GC操作造成的,OP空间(用作GC和磨损平衡的预留空间)不足也不无关系。
双分区方案
此方案最关键的地方就是两个分区的比例,为了更大地突出差异,我们选择了200GB+40GB(5比1)以及120GB+120GB(1比1)两种方案进行对比(都写满90%以上的数据)。
双分区方案性能对比(满数据) | |||||
200GB+40GB (200GB分区) | 200GB+40GB (40GB分区) | 120GB+120GB (靠前的120GB) | 120GB+120GB (靠后的120GB) | ||
AS SSD Benchmark 1.6 | 顺序 读/写 | 308MB/s/ 最低180MB/s (写速度不稳定) | 320MB/s/ 最低155MB/s (写速度不稳定) | 310MB/s/ 最低181MB/s (写速度不稳定) | 306MB/s/ 最低138MB/s (写速度不稳定) |
4KB 读/写 | 18MB/s/52MB/s | 16MB/s/50MB/s | 15MB/s/50MB/s | 16MB/s/54MB/s |
原本我们还指望两种分区模式性能有很大差异,但实际测试结果表明,只要是写满数据,多测几遍持续写速度都会有很大起伏,使得持续写速度的测试成绩没有比较意义了。好在无论是写满数据还是空盘,读速度的起伏都不算大。如此现象也只能归结于GC操作和OP空间不足的原因了。值得一提的是,如果这些分区都有足够空闲空间,持续写速度就会变得很稳定。
疯狂博士
通过本次研究,我们可以得出几个给固态硬盘分配数据的结论。
第一点:想要固态硬盘性能衰减慢点,就不要把它装满。
这一点很好理解,为了让TRIM、GC和WL(磨损平衡)工作得更好,你需要给固态硬盘留些空闲空间。我和固态硬盘厂商的技术工程师交流过,据他们所说,这个空闲比例留为40%左右最好(有点奢侈啊!)。
第二点:空闲空间可以是已分区和未分区区域
不管空闲空间是否被分区,它都可以被GC和WL(磨损平衡)所使用(120GB分区+120GB未分区的测试结果证明了这一点),如果你把240GB都分了区,那请保证有一部分空间不存数据。不过对于只有一个固态硬盘的笔记本用户来说,如果经常要使用必须开启虚拟内存功能才能使用的程序,那还是留一部分空间不分区好了,免得虚拟内存文件占用到那部分空闲空间。
第三点:如果你不是经常往固态硬盘里拷数据,可以不用在意这点性能衰减
固态硬盘性能衰减和磨损都是由于写操作而产生的,从测试数据也可以看到,GC操作、OP空间大小最终影响的都是写速度,而如果你多数时候只是运行固态硬盘上的应用程序和游戏,那完全可以忽视这点影响(因为那只是读操作)。不过,如果你的固态硬盘是系统盘,那就不能忽视了,Windows系统和杀毒软件不停打补丁、升级,这些都会不断地进行写操作而生成磁盘碎片,如果是这样,那还是留些空闲空间吧。
延伸阅读
固态硬盘出厂态和稳定态的性能差异
前面也提到,固态硬盘第一次使用时性能最好(出厂态),然后会越用越慢,进入一个性能比较稳定的状态(稳定态)。这里我们就来看看,同样是空盘,出厂态和稳定态到底有多大差别。
240GB分区 (新) | 240GB分区 (写满数据并格式化后) | ||
AS SSD Benchmark 1.6 | 顺序 读/写 | 313MB/s/309MB/s | 307MB/s/245MB/s |
4KB 读/写 | 19MB/s/57MB/s | 18MB/s/53MB/s |
可以看到,稳定态下写速度的下降是很明显的,其实这才是一块固态硬盘在正常使用环境中的比较真实的性能体现。
报纸客服电话:4006677866 报纸客服信箱:pcw-advice@vip.sin*.c*m 友情链接与合作:987349267(QQ) 广告与活动:675009(QQ) 网站联系信箱:cpcw@cpcwi.com
Copyright © 2006-2011 电脑报官方网站 版权所有 渝ICP备10009040号