可以看到,如果你的速度够快,你可以在低于2GB的时候就让HDD接管写操作。我不知道这是不是SSD上的可用空间量,但很有可能就是这样,因为显示121GB的SSD又不充分使用它实在说不通。
在大多数时候,当你不那么积极地写入SSD时,Fusion Drive可以保持至少4GB的SSD可用空间。需要注意的是:当你第一次使用它时,Fusion Drive大部分都是空的,你写入的几乎任何东西,无论大小,都会直接进入SSD。然而,当容量承受一定压力时,苹果就会改变方法:让任何文件最多写入4GB到SSD,其余部分则放到HDD上。
通过安装苹果的OS X开发者工具以及Xcode本身,我证实了这一点。后者接近于4GB大,但默认状况下,它的很大部分都到了SSD上。
应用程序生成的数据也是如此。我用Xcode创建Adium,一个682MB的项目,整个编译过程都发生在SSD ——机械硬盘一直都没有活动。我试图创建一个更大的项目,近2GB的Firefox。这时出现了短暂的HDD活动,但绝大多数活动都是在SSD上。
我复制了一个很大的视频文件(>10GB)到这台iMac上,现在我把它复制到一个新的位置上,并密切注意Fusion Drive的动向。最初的2GB是从SSD传输到SSD,接下来的2GB是从HDD读取,写入SSD。大约4GB被复制之后,源驱动器和目标驱动器都变成了HDD。在我看来,正确的做法应该是默认情况下把所有的大文件都放入HDD ,除非它们被频繁访问。苹果的做法似乎是一个合理的妥协,但它把文件块放入SSD的方式比我以为的更加积极。
我重复了这个测试,用另一个我从来没有访问过的视频文件,得到的结果完全不同。整个文件都存在HDD 上。我又重复一次这个测试,用我访问了好几次的iPhoto图库,令我惊讶的是,这个iPhoto图库的大部分都在HDD上,但也有一些少许读取来自SSD。但在这两种情况下,复制的目标驱动器当然都是SSD。
我Anandtech文件夹的大小超过32GB,含有文字、照片、演示文稿、基准测试结果,以及我做过的几乎所有评测。虽然这个文件夹非常重要,但它其中大部分都没有经常被访问。我在复制这个文件夹时,发现几乎全在HDD上。38GB的“我的文档”文件夹也是如此,这个文件夹中的大部分也是未读过的。
另一方面,应用程序几乎总是放在SSD上。
之前我经常手动把操作系统和应用程序放在SSD,大的媒体文件放在HDD上,Fusion Drive把这个过程自动化了,而且效果还相当不错。我手动整理资料和Fusion Drive自动化之间唯一的区别就是,我把“我的文档”和Anandtech文件夹默认放在SSD。这样做不只存在性能方面的考虑,也是为了可靠性,因为硬盘比SSD更容易出毛病。
Fusion Drive的性能
对Fusion Drive进行基准测试有点困难,因为它总是写入到SSD。如果你不把Fusion Drive填满,你写入的大量数据可能全部会到SSD上。如果你确实填满了它,但测试的数据集<4GB,那你测量的仍然是SSD性能。
我想出了一个相对简单的用例,可以涵盖两个驱动器。现在我的Fusion Drive已经填充了70%,这意味着SSD的容量快要到顶了(除了其4GB的缓冲)。我把含有703张照片的iPhoto图库导出为TIFF格式的照片。生成的文件相当大,当达到297张照片时,4GB的SSD写入缓冲区已经满了,所有后续导出的照片都到了HDD 。我给这个过程计时,然后把它跟iMac上的一个HDD分区做对比,也跟通过USB 3.0连接的一个三星PM830 SSD对比。结果有点偏向于纯HDD 配置,因为这个写操作基本上是顺序的:
上图准确地总结了我的Fusion Drive 体验:它差不多处于HDD 和SSD的正中间。在这个测试中,速度提升不是很大,但这主要是因为我们使用了相对低的队列深度顺序传输。对于比较随机的工作负载,Fusion Drive和HDD差距将拉大。可惜的是,我无法找到好的应用程序用例来生成4GB +的伪随机数据,使其可重复性高到可以进行基准比较的程度。
如果我一直对Fusion Drive进行非常大的顺序写操作(一个文件就高达260GB),最后它会傻掉,不再迁移数据到SSD了,除非你重新启动机器。我怀疑这个bug不是由正常的自动测试触发的,但它确实提供了一个有趣的状况,我可以利用它来开展测试。
启动我频繁使用的iMac预装应用程序,它们仍在SSD上,但一些后来安装的程序却不是这样。特别是Photoshop CS6,它部分在SSD上,部分在HDD上。对于工作负载太大,SSD无法单独处理时的Fusion Drive 伪随机读取性能,这是一个很好的基准测试。我测试Photoshop在Fusion Drive上的启动时间,跟在纯HDD 分区上,以及通过USB 3.0连接的PM830上的情况相比较。比较结果再次反映了我的体验:
相对于纯HDD ,Fusion Drive有明显的改善,启动时间快了40%。然而,纯SSD也快了一半以上。请注意,如果Photoshop是最常用的应用程序之一,它会被完全移动到SSD上。性能跟在纯SSD上差不多。测试中没有出现这样的状况,是因为我的1.1TB Fusion Drive 驱动差不多充满了80%。
Fusion Drive的实际限制
苹果Fusion Drive在写入SSD是非常积极的,但你的数据越多,它的算法似乎就变得越保守。这倒并不是很让人震惊,但需要指出的是,在驱动器总使用量较低时,我需要做的几乎一切都是使用的SSD,但当应用程序的需要超过了Fusion Drive 可以轻松应付的范围时,这个平台对于“什么东西可以被移动到SSD”就变得更加挑剔。要记住的是,如果128GB的存储空间不够存储你所有的常用应用程序、数据和操作系统,你的Fusion Drive体验就更像是HDD了。为了模拟和证明这一点,我把我200GB +的MacBook Pro映像移动到了iMac上。请注意,这200GB中的大部分是我经常使用的应用程序和数据。
测试到最后,我觉得我需要更多的SSD。 Spotlight搜索花费的时间比纯SSD多,并非所有的应用程序都是瞬间启动的,将照片从Safari添加到iPhoto需要的时间也长一点儿…… Fusion Drive 可能是很好,但它不是魔法。如果你确实需要超过128GB以上的SSD,Fusion Drive可能并不适合你。
结束语
苹果Fusion Drive可能是我用过的最好的SSD / HDD混合解决方案。这不