将硬盘驱动器划分为比实际大小小的分区是否可以使其客观性能更好?


21

我曾经在2016年使用80gb HDD进行工作,但实际上大多数时候它都非常活泼。在购买了具有1TB HDD,更大内存和更快CPU的新笔记本电脑之后,尽管它是新一代HDD(不确定RPM速度),但它实际上比我的旧笔记本电脑慢得多。

因此,最近我决定将我的1TB HDD分区为80gb主分区,并保留其余空间未分配,因为除了操作系统和主Web浏览器之外,我实际上并不需要任何东西。

完成之后-由于某种原因,它实际上比以前更加敏捷。文件管理器运行得如此之快,HDD的整体性能感觉要好得多。我想知道这只是安慰剂还是SSD时代之前发生的合法事情。

我读过一些有关“磁盘短行程”的信息,但不确定是否与我所做的相同。也许我的BIO首先在边缘划分空间?我想知道你对此的解释。


6
这是一个有趣的问题,但如果2016年购买的HDD只有80GB的存储空间,那么RPM可能是一个大问题?这很可能是混合HDD / SSD,或者是某种High RPM驱动器(至少10,000RPM,可能更多),这两种都会对性能产生重大影响。
Cestarian

1
@Cestarian这是一个好点。我目前使用的是2015年以来相对较低端的台式机,它配备了80 GB SSD和1TB HDD。我上次购买大小为80 GB的HDD是在2003年左右。因此,上述80 GB HDD可能不是HDD,而是SSD。
kasperd

Answers:


29

是的,您正在做的事情叫做“短行程”。

它通过限制驱动器的磁头移动来提高寻道性能。硬盘驱动器的性能主要受以下三个因素限制:搜索时间(将磁头移入或移出所需的磁道所需的时间),旋转等待时间,当然还有实际的数据传输速率。

原则

大多数现代3.5英寸硬盘驱动器的平均寻道时间为9到10毫秒。一旦完成“搜索”,驱动器就必须等待所需扇区的开始。平均旋转等待时间仅是驱动器转一整圈所花费时间的一半。一个7200 rpm的驱动器以每秒120转的速度转动,因此一转需要1/120秒,因此半转-平均旋转延迟-为1/240秒,即4.2毫秒。(请注意,每个 7200 rpm硬盘驱动器都是相同的。)因此,在开始传输数据之前,我们平均大约需要13毫秒。

数据传输速率是驱动器规格所要求的。对于现代驱动器,这几乎总是比物理接口(例如SATA 3)所支持的要低一些。请注意,I / O操作的数据传输部分通常是持续时间最小的部分,并且使用现代接口几乎可以忽略。即使在旧的ATA33驱动器上,传输4KiB也仅花费1.2毫秒。

寻道时间规范是各种磁头移动距离可能寻道时间的平均值。您会看到,从一个圆柱到相邻圆柱的搜寻比从最里面到最外面的搜寻要短得多。(“圆柱体”是从单个头部位置可访问的所有轨道的集合。)这两种都是非典型情况。HD性能的假设是,访问的数据将相当随机地分布在整个驱动器上,因此通常引用的寻道时间约为9或10毫秒,是许多不同寻道距离的平均值。在最详细的规格表上,一些制造商同时列出了圆柱到圆柱(通常标记为“从轨道到轨道”),即相邻的寻道时间和除平均值外的最大值(端到端)。

当您看到通过大型“顺序”传输完成的驱动器基准测试时,您将看到使用数据访问模式进行的测试,这些访问模式可以最大程度地减少寻道时间和旋转延迟,并最大程度地提高驱动器内置缓存的效率。即从头到尾依次读取单个大文件,一次读取例如64 KiB,文件占据一个连续的块范围。

那么短击如何运作?

通过创建(并且仅使用)比驱动器小得多的分区,可以将所有数据保留在可能的柱面(磁头位置)的狭窄范围内。这使得最大可能的寻道时间更短,因此平均值更小。它无助于旋转延迟或传输速率。

另一种帮助的方式是将驱动器的使用限制在最大容量的气缸上。现代高清硬盘使用“区域位记录”,这意味着外部磁道中每个磁道的扇区比内部磁道中的扇区更多。因此,如果数据在外圆柱上,则可以访问更多数据而无需移动磁头太多。

真的有效吗?

许多不同的技术爱好者站点都对此进行了测试。例如,请参见Tom's Hardware的本文。结果令人印象深刻:每秒I / O速率几乎提高了一倍。

但这是通过购买大型硬盘驱动器而仅使用驱动器容量的一小部分来完成的。这从根本上增加了您的每GB成本。

但是,有一种解决方法。你不必永远使用驱动器的其余部分可获得速度优势。当您的系统频繁访问主分区时,只需将其保留在日常使用中即可。我们大多数人都有一些文件可以访问很多(操作系统,应用程序以及应用程序可以使用的一些数据),而访问的数据量却不那么多。例如,您可以将驱动器的其余部分用于某种档案存储,或用于音乐和视频等多媒体文件。媒体播放通常不经常对单个文件进行顺序访问,并且此时您通常不会在计算机上做很多其他事情。因此,以这种方式使用驱动器不会使媒体播放比所有内容都分散在一个大分区上更糟,并且不涉及媒体数据的工作应能获得短行程的好处。

但这是个好主意吗?

另一方面... TH进行的测试是综合基准,为了获得这些结果,他们放弃了磁盘容量的很高百分比。现代操作系统做了很多工作来尝试优化高清性能。Windows的“文件放置优化”就是一个例子,该答案的注释中对此进行了描述。而“短击”将使这种方法无效。仅仅因为某人在综合基准测试中获得了令人印象深刻的结果,并不意味着“短行程”一定是一件好事。

想一想:如今,一个1 TB硬盘的价格约为50美元。但是您只使用其中的80 GB。您说您只需要操作系统和浏览器...嗯,只需63美元,您就可以购买Samsung 128 GB SSD,无论您是“短行程”有多远,都可以再给您80 GB的空间和更好的FAR性能高清。或者花50美元,您就可以获得240 GB容量的SanDisk SSD。这似乎比不使用几乎所有价格为50美元的1 TB硬盘驱动器更好。

顺便说一句

顺便说一句:您的“ BIOS”(或UEFI)不会创建分区,并且与分区的位置无关。这取决于操作系统的分区实用程序。我听说过的每个操作系统都首先使用外部圆柱体。例如,在Windows的“磁盘管理”实用程序中,每个磁盘中驱动器分区的图形显示显示了布局,其中最外面的柱面在左侧。AOMEI磁盘分区实用程序执行相同的操作。

旁白-真实的故事:早在5.25英寸规格的硬盘驱动器大小达到数十和数百MB的时候,一家名为CDC的公司就有一系列名为“ Wren”的驱动器。(这个名称无疑是对稍早时代物理上更大的富士通“ Eagle”驱动器的一记耳光。)一段时间以来,它们还有性能稍高的型号“ WrenRunner”。容量大约增加了90%,成本增加了20%,并且平均访问时间缩短了大约一毫秒。经过一些实验后,很明显“ WrenRunner”只是一个“ Wren”,头和最后几个磁道被锁定在驱动器的固件中。也就是说,您可以通过“短行程”从便宜的Wren中获得相同的性能和容量,尽管那时我们没有使用该术语。


尽管您的解释是合理的,但“是”似乎是虚假的。如果您仅使用可用存储的5%或10%,则任何体面的OS的文件系统驱动程序将主要或完全从磁盘的前5%或10%分配存储。如果分配超出该范围,它将避免使用碎片严重的空闲区域,从而表现更好。对驱动器进行分区以“提高性能”,而不是将它们分开,这只是一个荒谬的想法。
R.,

@R ..否则可能是避免在磁盘的开头重复写入,从而使驱动器的使用寿命更长,但是我想只有在您非常频繁地替换数据的情况下
某人

1
@R ..嗯...如果您在使用大型HD数月或一年后曾查看其使用情况分布,则可能会有不同的想法。
Jamie Hanrahan

2
另一方面,还有Windows的文件放置优化。它故意将在启动过程中及时接近访问的exe和dll的各个部分移动到磁盘上。并且由于这试图将这些东西移动到单个连续的空间中,因此在可以找到此类空间的地方(即在具有大量可用空间的驱动器上)应该更加有效。(自然,WINDOWS不会在SSD上这样做。)因此,我得出的结论是:“是的,它可以提高HD性能”仍然适用于基准测试-但这并不一定意味着这样做是一件好事。
Jamie Hanrahan

2
这是有关Windows文件放置优化的文章。当然,所罗门(Solomon),鲁西诺维奇(Russinovich)等人的Windows Internals是“马口巴”的参考。 autoitconsulting.com/site/performance/...
杰米·汉拉汉

3

有很多因素,我不确定是否有严格的规范答案。但是,如果数据不是高度分散的,则靠近旋转磁盘外部的较小分区可能会显示更快的查找和顺序传输。

在旋转盘上,外圆柱比内圆柱具有更多的扇形和更快的旋转速度。许多现代文件系统试图连续放置文件扇区以减少碎片,这通常意味着大型分区随着时间的推移会使用越来越多的内部柱面。

较小的分区可能会迫使文件系统将更多的数据放置在外圆柱上,并且即使是碎片很小的数据也会更快地在读取磁头下移动。

您可以使用hdparm之类的Linux工具测试驱动器在不同分区大小下的随机访问和顺序性能,尽管您可能想要使用更高级的工具,如果您想要的不仅仅是实际答案,它还会考虑碎片问题。

根据您使用驱动器的用途,浪费磁盘空间的任何好处很可能会被浪费本身所抵消。如果随机访问或处于碎片状态的性能对您很重要,则从长远来看,切换到固态驱动器(SSD)可能更有意义。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.