迅维网

查看: 3870|回复: 20
打印 上一主题 下一主题

为什么机械硬盘的缓存不是越大越好?

[复制链接]
跳转到指定楼层
1#
发表于 2017-12-6 11:23:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 来自: LAN 来自 LAN

马上注册,获取阅读精华内容及下载权限

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

x
“如果硬盘采用容量更大的缓存,性能不但没有提高,反而降低硬盘提取数据的命中率。” 这句话怎么理解? 原文在此 http://m.zol.com.cn/article/2773659.html

2#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
与当年比尔盖茨说640k内存可以满足一切应用一样,这句话就是胡说八道。

原因仅仅在于缓存的价格成本,与其它的无关。

当64k为主流的时候硬盘厂商会宣称64k就够了再大是浪费,当16M为主流的时候厂商会宣称16M就够了多余的缓存反而降低性能,不过现在,主流的缓存尺寸是64M或者128M,随着时间的推移与缓存价格的下降,厂商口中的最佳缓存数量会再次上升,毕竟消费者只需要听起来像真理的东西就够了。

另外,希捷已经实现了内置8G或16Gssd作为机械硬盘缓存(相当于把缓存做到8G或16G),而实测用8G到16G为机械硬盘缓存确实相比64M缓存大幅度提高了机械硬盘的性能。如果在这种事实面前,再说40M就够用,或者再说缓存越大反而性能下降,就是自己打脸了。

回复 支持 反对

使用道具 举报

3#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
这句话是胡说八道。

回复 支持 反对

使用道具 举报

4#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
其实就一个原因,越大在断电的时候越容易丢数据。特定环境中,我们使用的时候是关闭掉硬盘缓存,避免问题的

回复 支持 反对

使用道具 举报

5#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
机械硬盘的缓存确实不是越大越好,但是:
“如果硬盘采用容量更大的缓存,性能不但没有提高,反而降低硬盘提取数据的命中率。”
这句话是错的。简单的归谬,如果缓存容量等于硬盘容量,那么缓存的命中率一定可以达到100%。

问题的关键是两点:
1)缓存的加速主要来自于避免重复操作、浪费时间。什么时候会重复操作?在硬盘上,只有同一块数据反复被存取的时候才发生重复操作。但一般的消费应用下,这些需要被反复存取的数据是很有限的。缓存容量大到一定程度之后,再扩大带来的性能增加微乎其微。在普通消费应用上,这个容量差不多截止于40MB(考虑使用易失缓存)。因此缓存不需要无限大的容量。
2)缓存不是没有成本的。它单位价格很高(相比硬盘本身而言);而且它一旦掉电就丢失了存在数据风险;它会使得硬盘逻辑结构变复杂。考虑这些因素,缓存大过一定程度之后就只增加成本和风险,不带来效益。

最终结果就是一般硬盘缓存只做几十到上百兆。

回复 支持 反对

使用道具 举报

6#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
因为缓存越大越贵,贵了你买不起,所以不好。

回复 支持 反对

使用道具 举报

7#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
越大就越贵,买的人就少,对厂家很不好。

回复 支持 反对

使用道具 举报

8#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
你用膝盖想也知道不可能啊,最不济我不要全用还不行吗……

回复 支持 反对

使用道具 举报

9#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
一派胡言

回复 支持 反对

使用道具 举报

10#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
命中率由缓存空间、替换算法、请求到达分布所决定(通通都打回本科重学计算机组成原理和操作系统,软件学院就是渣,软件工程就是渣)。
例如,FIFO算法,增加缓存容量,但缓存命中率也会下降(不考虑请求到达分布),此即
缓存算法之belady现象。
再例如,LRU算法,当存在热点数据时(考虑请求到达分布),LRU的效率很好,但偶发性的、周期性的批量操作会导致LRU命中率急剧下降,缓存污染情况比较严重。此即请求到达分布问题。
至于缓存跟磁盘一样大,那就发生了本质变化,是另一种玩法:相变存储器有可能改变计算机体系结构。

回复 支持 反对

使用道具 举报

11#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
对方不想理你,向你扔过来一本《计算机组成原理》

回复 支持 反对

使用道具 举报

12#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
这种评测笑笑就好,还不如去卡巴或Chiphell。
写入缓存能提高写入效率,然而意外停电容易GG(虽然现在硬盘有停电保护),读缓存能存放使用频率高的数据,这个越大是越好,大到和容量一样大,再加上可持久化,再去掉机械储存部分,就写作SSD读作固态硬盘。
而现在妥协的产物就是混合硬盘。

回复 支持 反对

使用道具 举报

13#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
命中首先是发生在缓存中的,所以你就知道这句话胡说八道在哪了

回复 支持 反对

使用道具 举报

14#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
泻药,额,多少年没回答了。
缓存容量大不管用LRU,ARC什么策略肯定是命中率提高,然而这带来了成本提高的问题。对于CPU倒是除了这个问题还有延迟提高的问题。
对于固态硬盘因为需要加载FTL和当缓存,一般附带的颗粒比较大,当然也有不带或者SF那种集成的,性能受影响。不管HDD SSD因为异常断电后如果是写入缓存需要写入到硬盘,如果没有UPS或者大容量电容支持,会造成数据丢失,如果硬盘做16Gcache也会出问题啊,PrimoCache可以试试,SSHD除外。

回复 支持 反对

使用道具 举报

15#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
且不跟你说缓存本身这件事,但你这句话让一众混合硬盘脸往哪里搁?

回复 支持 反对

使用道具 举报

16#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
缓存大的硬盘 会存在一个问题 就是提取数据失败,造成响应超时,我新买的拯救者 玩游戏爆盘,我想我R新电脑新硬盘就这样?我查了一下硬盘,128m缓存的5400转的硬盘,就是因为缓存太大造成提取失败,响应超时,我老本子上用的32m缓存的黑盘 性能也很强劲,所以说缓存不是越大越好,而是要配合其他硬件一起提升。

回复 支持 反对

使用道具 举报

17#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
是啊,最后intel出了傲腾作为hdd缓存,但是价格太贵(不如上ssd了)

回复 支持 反对

使用道具 举报

18#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
请看CSAPP关于存储器一章,假设缓存无限大,那么就只有冷不命中,后续访问全命中。

回复 支持 反对

使用道具 举报

19#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
来来来,极端值分析,如果硬盘缓存大到全是缓存,比方说全用不挥发存储器例如PCM,那你开机就和点下鼠标消除屏保一样快。
原文说的大硬伤重点在转速,其实他可能想表达的是,转速低了,即使缓存增加了总体性能可能也会下降。但是扯到影响命中率就真的牵强了。

回复 支持 反对

使用道具 举报

20#
发表于 2017-12-6 11:23:43 | 只看该作者 来自: LAN 来自 LAN
就是因为硬盘的速度太慢所有才需要缓存,当硬盘的速度足够快的时间就不用要缓存了……
缓存当然越大越好,因为从缓存读写数据比较快。

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表
附近
店铺
微信扫码查看附近店铺
维修
报价
扫码查看手机版报价
信号元
件查询
点位图 AI维修
助手



芯片搜索

快速回复