» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

说说 iPhone6 TLC 测评中的一些错误。

楼主和HKEPC都在瞎分析,这个表现和Linux的Page cache一点关系都没有。这个测试的结果相当明显,原因也很简单,熟悉SSD的一眼就能看出来,这明显是用TLC的iPhone使用了数据压缩加速技术。早期SSD上常用,当时以SandForce主控为代表,现在的SSD似乎不太用这个技术了。

数据压缩加速对全0数据具有极强的加速效果,但是对随机数据毫无作用。从这个测试的一些结果来看,iPhone在TLC的压缩加速上可能动用了主处理器和主内存,而不是像SSD那样用SSD上的主控来做这个处理。结果就是存储的时候占用主处理器和主存,而且写入太快太大的时候会来不及压缩导致性能暴跌。

[ 本帖最后由 xphi 于 2014-11-18 16:02 编辑 ]


TOP

引用:
原帖由 ff_cactus 于 2014-11-18 16:08 发表

把数据压缩一下有什么好处? 为什么只在SSD上做压缩,而发展了这么多年的普通硬盘上没采用过?
Sandforce的压缩加速又不是什么神秘技术,11年前后透明压缩的各种分析文章到处都是,你就不能自己找点资料读一下?



TOP

引用:
原帖由 ff_cactus 于 2014-11-18 16:02 发表

[root@workstation ~]# dd if=/dev/zero of=/tmp/filename bs=1024K count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.0219152 s, 478 MB/s
[root@workstation ~]# dd if=/dev/ze ...
你就算完全不懂存储好歹也看看原版HKEPC的截图,看看别人的dd命令是怎么写的……


TOP

引用:
原帖由 dboy99 于 2014-11-18 16:11 发表


我擦,这是我今天看到的第二个神论了,可以跟虚拟内存大神的神论相媲美
我看你是喷糊涂了吧。

TOP

引用:
原帖由 mushroom 于 2014-11-18 16:24 发表


不能解释全0最后2个测试tlc的速度下降 和 内存的区别。
这个应该是明显的cache大小在tlc和mlc上不同而造成的。
至于有没有压缩...如果有cache的话这点速度应该没必要用压缩。
虽然不知道iOS的内存管理机制与Linux有多大差别,但是不妨假定都是差不多的Page Cache机制,如果TLC的加速是由于iOS使用了特别的cache策略的话,那么对随机数据和全零数据是一视同仁的,而不会出现文中的结果。

一般我们测IO,只关注两个参数,连续读写下的峰值性能和随机读写下的IOPS(一般用4K随机读写),这里的随机读写是指在IO设备的随机位置读写,而不是指随机数据,我们看HKEPC的原文,原文在这里:http://www.hkepc.com/11911/page/3#view

注意原文用词:Random Fill Copy Test这一节题目虽然用的Random Fill,但是第一句话就是“當拷貝改用 Random Data 後”,从这里看出原文的测试是使用随机数据填写,而不是随机读写。不知道这里是编辑有意还是无意的结果。可能是打算测随机读写,结果测成了随机数据读写。

一般的IO测试不会测随机数据读写,因为没有什么意义,但是当时SandForce主控开发出了透明压缩加速之后,对全0数据有极其强大的加速做作用,被人视为作弊,所以后来SSD测试软件都会特别使用随机数据来测试SSD性能,如果能找到老的Sandforce主控,可以试用老版的AS SSD Benchmark 和 Atto分别做测试,就能看到巨大的性能差异。

[ 本帖最后由 xphi 于 2014-11-18 16:39 编辑 ]

TOP

引用:
原帖由 dboy99 于 2014-11-18 16:30 发表


比你看得多得多,你只知道sandforce有压缩,有听说过台湾的群联主控也是带压缩的吗?


sandforce主控的压缩跟小文件写入有个屁关系啊,压缩是在底层用DSP实现的,不会消耗主控算力,而且跟文件层一点关系都没 ...
我说数据压缩加速由Sandforce开始,又没说只有他家才有。透密压缩如果完全靠主控,应该可以做到多大的数据写入都没有问题,但是从这篇文章的测试来看,iPhone很可能动用了主处理器来做压缩,所以才会出现原文中描述的一些奇怪的场景,比如:“但對 Random Data Copy 測試沒有什麼性能幫忙,相反令 CPU 佔用率大幅提高,導致 iPhone 6 出現沒有反應的情況。”

TOP

引用:
原帖由 ff_cactus 于 2014-11-18 16:54 发表

你不说缓存的速度约等于内存的速度吗,还能不断变快?
看懂了没?

[ 本帖最后由 xphi 于 2014-11-18 17:04 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP

引用:
原帖由 dboy99 于 2014-11-18 16:59 发表
把iphone6的慢归咎于压缩是完全错误的,平时关注SSD的人应该都听说过苹果当年收购anobit吧,ip6就是用的他的主控,而anobit从来都没有声称过他们的主控具备压缩功能。至于说依靠CPU来做压缩就更可笑了,MLC版ip6的小 ...
我的推测是iPhone只在TLC的存储上使用主处理器进行透明压缩来节约闪存寿命和改善性能,这是参照文章的内容来分析的结论,可以解释文中所有结果。MLC版的小文件有没有读写性能下降与我的推测有啥关系?

而所谓的Cache不能解释为什么TLC版的对随机数据性能极差,如果使用Cache机制,TLC在使用随机数据和全零数据时会具有同样曲线。

更进一步来说,原文在测试400MB数据写时,TLC版的iPhone做到了持续性能200MB/s,而在800MB数据写时性能暴跌。如果这是使用Cache机制导致,至少说明两点,1、iPhone6可以划分出至少400MB以上内存供IO用作Cache;2、iPhone6的内存性能只有200MB/s。这两点看起来都很不可能。

TOP

引用:
原帖由 ff_cactus 于 2014-11-18 17:11 发表

你到底是想通过本质解释现象,还是想通过现象解释现象? 确实没看懂。 我又没说文章的数据在造假, 我质疑的是数据的解释。你把实验再做一次能解释什么?
dd有个参数可以设置oflag,去man一下看看是啥意思。

TOP

引用:
原帖由 ff_cactus 于 2014-11-18 17:27 发表

你的测试最多只能解释为什么400MB那里为什么会有一个巨大的滑坡。问什么随机数据填写没有呢。
我再引一遍你的问题:
引用:
原帖由 ff_cactus 于 2014-11-18 16:54 发表

你不说缓存的速度约等于内存的速度吗,还能不断变快?
我截图是告诉你这个问题的答案。

至于原文的测试结果,我第一帖就解释了。

TOP

发新话题
     
官方公众号及微博