PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

三星840PRO垃圾回收策略探讨

[复制链接]
跳转到指定楼层
1#
点击数:21089|回复数:56
本帖最后由 James007ss 于 2013-6-26 16:46 编辑

在写前面那个技术探讨帖的中途,我想起840pro当初在PCEVA评测时,曾发现Trim及GC(垃圾回收)存在某种问题。
关于评测时发现的问题,请大家参考下面的评测链接,我这里就不多说了。
http://www.pceva.com.cn/article-1365-7.html

那么经过超过半年的时间后,三星是否已经确实修正和改善这个问题呢?带着这疑问,我请浴室对他手上的840pro重新进行了一次简单的测试,以解答这个问题。

浴室用iometer跑32QD随机4K全盘测试30分钟后,再测HDT的写入,成绩如上图。


然后对盘做快格后,删除分区再跑HDT写入测试,结果如上图,从结果曲线分析,Trim的效果依然并不好。


浴室再次对840pro做了全盘快格,并且使用了WIN8的手动优化(Trim)功能,接着等待20秒后删除分区再跑测试,结果如上图,效果依然不能算理想。


第3次全盘快格后,浴室等了1分钟才删分区跑测试,这次的曲线终于完全正常了。

那么这代表840pro的Trim问题依然存在吗?当时我们跟浴室的讨论中,想到了还有1个可能性的存在。那就是三星的固件算法,有可能采用了跟浦科特TS技术正好完全相反的策略,为了验证我们的猜测,浴室再次用iometer对840pro跑了1小时的32QD随机4K写入测试。


这是测试完后,HDT写入测试的曲线。

然后浴室对盘执行了分区快格的操作,但这次在格完后,等待了10分钟才再跑HDT测试,结果如下。

这次测试结果就完美了。

通过上面的测试,最终我们得到了一致的结论,三星在GC策略上,的确采取了非常不激进的算法。因此导致前面如果在刚发送完Trim指令就执行测试的时候,由于SSD实际根本没有执行后续必要的GC操作,从而无法得到很好的测试成绩。

三星的这种策略其实就类似无压缩特性的SF固件GC策略,跟浦科特早期TS那种接近见缝插针式的GC策略,各走了两个极端。浦科特非常不希望用户在需要写入数据时,SSD内没有足够的可用空间,所以一直都在尽快去做垃圾回收的工作,让盘内的可用空间保持在最大限度;三星则不同,只要它确定盘内还有足够用户当次写入的空间时,我们推断它就根本不做垃圾回收的工作,直到它完全确认用户不在需要它工作了(盘闲置待机了一段时间),它才会去做垃圾回收的工作。也正是这种GC策略,才会导致了840pro在包括PC MARK7在内的测试中获得比其它同等级SSD更好的成绩,原因是在测试的过程中,因为测试的写入量根本没法填满全盘所有可用空间,那么840pro就不需要做任何GC工作,可以把全部可用性能用于测试的磁盘操作上,那么测试成绩自然就比其它产品要更加好了。

某方面来说,因为目前消费级的主流SSD可以完全满足消费级用户的日常使用需求,所有SSD产品的性能对用户需求而言都是过剩的,PCM7的测试正好就等于在比较这些SSD产品中,谁能剩下更多的性能,所以840pro采用的GC策略就让它在这方面比其它SSD产品有优势了(其它SSD产品在测试中途会做GC)

当然这2种各走极端的GC策略也无法说谁更好跟谁更差,只要不影响用户的使用体验和默认标称的耐久度,那么选择使用任何一种,都完全是SSD设计师的个人爱好跟厂商对产品的取向问题。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
James007ss  楼主| 发表于 2013-6-26 18:00 | 显示全部楼层
909648183 发表于 2013-6-26 17:54
那么是否意味着三星的GC策略和SF类似?
三星的这种策略其实就类似无压缩特性的SF固件GC策略

注意我说的这句话。
3#
James007ss  楼主| 发表于 2013-6-26 18:28 | 显示全部楼层
我吃方便面 发表于 2013-6-26 18:26
想请教一个问题。
用hdtune的写入测试确实可以观察GC的执行情况,但是却比较麻烦。
我发现hdtune的读取曲线 ...

HDT读取测试曲线下降的地方是盘内有数据的地方。
4#
James007ss  楼主| 发表于 2013-6-26 19:05 | 显示全部楼层
qq2806 发表于 2013-6-26 18:28
不知道浦科特在“错误的道路上越走越远”怎么想的。

http://bbs.pceva.com.cn/thread-89843-1-1.html
估计你还没看过我对浦科特新固件的测试帖吧?建议你可以对比着看看。包括跟评测和旧版固件的各种测试帖对比着看。
5#
James007ss  楼主| 发表于 2013-6-26 19:16 | 显示全部楼层
solonace 发表于 2013-6-26 19:11
算是针对某款测试软件的优化么?或者说某款测试软件对它进行了优化?还是说这种gc方法与测试软件的测试方向 ...

也不能说就肯定是针对测试软件才采取这种策略,不过确实是正好迎合了PCM7的测试特点,这一点上面是确定的。
6#
James007ss  楼主| 发表于 2013-6-26 20:34 | 显示全部楼层
zxy356 发表于 2013-6-26 19:53
我觉得三星的垃圾回收更利于用户体验吧,也许SF的垃圾回收在使用当中感觉不出来。

打个比方在网游时SF一边 ...

是的,浦科特TS最早期的设计就是只要有任何GC的需要,都用最快的速度把GC先做了。

SF和三星这种就反过来,非逼不得以,不做不行了,那才会去做GC。这GC只要还能拖,它们就都往后拖到最后一刻才做。
7#
James007ss  楼主| 发表于 2013-6-26 20:50 | 显示全部楼层
frontwing 发表于 2013-6-26 20:41
显卡和手机跑分都可以让驱动去检测测试软件的进程,但SSD主控怎么知道当前的读写是跑分还是正常使用呢?
...

如果真的想为测试软件做特别优化,SSD并不需要知道操作是不是跑分,因为工程师一定知道,跑分测试的模式都是固定的,这世界跑分测试软件也就这么几个,只要针对它们测试中的操作特点写这类操作的特定优化算法即可。
8#
James007ss  楼主| 发表于 2013-6-26 21:00 | 显示全部楼层
909648183 发表于 2013-6-26 20:53
这样的话固件就会非常复杂吧,判断写入数据模型然后使用特殊优化算法

完全不复杂。比写出好的使用体验的固件算法简单多了。因为用户的使用环境和习惯都不尽相同,但测试软件只要是同一个的同一版本,测试方法永远一致。其实说白了就是我前面说的,让算法正好迎合上测试软件的测试方法即可。最显著的例子:SF跑iometer 2006跟2008,2006成绩超级闪耀,2008被大家吐槽死,区别就是2006数据模型100%可压缩,迎合了SF,2008是100%不可压缩,玩死SF。
9#
James007ss  楼主| 发表于 2013-6-26 23:19 | 显示全部楼层
dert88 发表于 2013-6-26 23:09
突发奇想。
浦科特M5P可以开发2种GC策略的固件,一种保持现状,另一种采用相反的策略,等于给truespeed加 ...

想法是挺有创意,但1个盘开发2套固件而且得同时维护的成本,这个我不确认有没有厂商会认为值得这么做了。
10#
James007ss  楼主| 发表于 2013-6-27 10:11 | 显示全部楼层
ecwq 发表于 2013-6-27 07:21
说了这么多,那到底是浦科特的GC方案对于我们日常实际使用体验好,还是三星的GC方案好?就单从日常使用感受 ...

三星的盘我没有实际接触,无法评价,但以我自己有玩过用过的M3P、M5Pro及M5M来说,浦科特给我的使用体验并没有发现问题,我个人的主观感受是很好的。其他用户的使用体验你也可以到浦科特专区看看他们发的帖子。三星这边也有用户发过帖子,你可以自己搜来看。
11#
James007ss  楼主| 发表于 2013-6-28 16:34 | 显示全部楼层
zhangchangv 发表于 2013-6-28 15:31
是不是说,此种GC方式很适合网吧服务器类的工作环境?

SF的固件算法本身的特点是适合作为网吧服务器回写盘使用的,840pro我则持保留意见,是否适合某种应用环境,不单单只是看GC算法的特点和策略的。
12#
James007ss  楼主| 发表于 2013-6-28 22:11 | 显示全部楼层
winrar_one 发表于 2013-6-28 22:08
这两种回收策略,对日常影响不大吧

对使用体验基本没影响的。
13#
James007ss  楼主| 发表于 2013-6-29 00:54 | 显示全部楼层
Mufasa 发表于 2013-6-29 00:51
普通840的GC策略怎样呢?

TLC闪存耐久性较差,应该采用更温和的GC才对。

目前我的推测应该也跟840pro类似。不过没盘在手,无法实际验证。
14#
James007ss  楼主| 发表于 2013-6-29 16:25 | 显示全部楼层
6leaf 发表于 2013-6-29 02:11
个人认为:
1、实际上SSD的算法策略各有所长,并无绝对的对与错,只是如何平衡和取向的问题。
2、为了迎合 ...

第1点说得很对,同一用户群体的SSD,其固件策略取向只关乎厂商和设计师的平衡和取向问题,不会说谁更好或更差,更不会有谁对谁错的定论。第2点,如果有证据证明某个厂商的产品确实这样做,那这个厂商就确实不值得赞扬,不过最后句不会是指我这篇文吧?我主帖里是有写清楚的,三星840pro的GC策略确实因为迎合了PCM7的测试模式,所以造成跑分漂亮好看的情况,但我同时也指出没有任何证据证明三星是刻意为了跑分好看才选取这种策略。

关于主流SSD只有跑分上的区别,实际使用感受没有多显著的差距,这个论点我感觉我说的次数,已经多到我自己开始觉得烦了,但现在似乎很多用户跟网友都未必能真正发现这点,因此我只能继续在不同的地方继续传达这论点。

对于你的题外话,我个人觉得你可能是因为PCEVA这边有浦科特和美光2个专区,但没有三星专区,所以才产生这种误会?这2个品牌跟PCEVA正在合作这事石头已经重复提过很多次,三星没有找PCEVA合作,这个我觉得也怪不到石头身上不是?他也没必要非求着三星来合作。我在三星那事的技术帖里也说过,因为浦科特跟PCEVA有合作,我才得以对浦科特的SSD了解比较多,三星的SSD,实话说我是碰都没有碰过。但我能比较肯定我至少对这些我有玩过或没玩过的SSD,都没有说过一句违心的话,只要是我知道的,好的我称赞,不好的我一样批评和提出建议,有疑问的我也一样尽力靠自己能力去尝试找答案,不过我的经济能力还没好到说随便都能自己买个SSD来玩。

所以这里我也再重复次我在那篇技术帖里主要说的观点,主流的这些SSD,每一款都有自己的特色和优缺点,不会说谁一定更好或谁一定更差,我是希望大家都能以这种正确的态度去了解和选择适合自己的产品,而不是仅仅被那些盲目的推崇或诋毁去左右自己的最终判断。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部