SDHC 卡上的 I/O 速度很慢

SDHC 卡上的 I/O 速度很慢

我在正在构建的小型 NAS 盒上安装了 ubuntu 桌面版 11.04。我还没有购买硬盘,所以我尝试在 SDHC 卡上安装 ubuntu。但是速度太慢了!我预计它会比普通的 5400rpm 硬盘更快,因为任何闪存的寻道时间都很短。

电脑详细信息:2gb ddr3 ram、1.8 双核 atom、asrock d525 mobo 和 8gb SD 卡。理论上,这对于 ubuntu 来说应该足够了。

但是,有几件事让我担心。首先,我认为我将读卡器连接到了 USB 端口。因此这会限制速度。考虑到读卡器位于 USB 上,这种速度缓慢是意料之中的吗?

我运行了 ubuntu 测试套件,硬盘上报告的读取速度为 800mb/s。我应该如何检查设备速度?还有其他方法吗?

答案1

USB 2.0 速度可能不是瓶颈,但大多数 SD 卡和读卡器真的很慢

您可以尝试使用它palimpsest来测量速度,但当我尝试使用 SD 卡时,它说驱动器太慢甚至无法测量。

答案2

硬盘几乎总是有缓存,通常为 8 GB,但通常会大得多。

它们既有预读缓存,也有后写缓存。预读缓存会在刚刚读取一个块之后读取接下来的几个块,以期在不久的将来读取它们,但如果在缓存被其他块填满之前没有读取它们,则会将它们从缓存中删除。

您的 SDHC 卡可能根本没有缓存。虽然它会受益于快速寻道时间,但您会看到闪存的直接读写行为。

写入闪存非常慢,因为必须先擦除,然后再进行第二次写入。

如果写入次数过多,闪存就会磨损。一旦写入,它就无法可靠地存储数据。为了延长使用寿命,使用磨损均衡技术,用于存储逻辑扇区号的物理扇区不断变化。因此,在 Linux 实际看到的文件系统下实际上有一个文件系统。

磨损均衡是由 SDHC 卡的硬件实现的,可能无法通过非常快的电路实现。

闪光速度非常非常快,就像带有 SATA 或 SAS(串行连接 SCSI)接口的固态硬盘一样,但我希望这些硬盘确实具有大容量 RAM 缓存以及更快的磨损均衡硬件。

答案3

SD 卡的额定速度不同。如果您还没有卡的包装,您可以在制造商的网站上查找。

我最近买了一张 16 GB 的 MicroSDHC 卡,用于在我的 Gumstix Overo Fire ARM 主板上运行 Linux。这是一张速度非常快的卡,我认为它被称为 Class 10 或类似的。这比典型的 ARM Linux 所需的卡要大得多,但我希望有足够的空间来存储我自己的数据。

你是用 PC 主板制作 NAS 的吗?还是你买了现成的 NAS?无论哪种情况,你的 USB 端口可能只有 USB 1.1。如果是这样,它将工作用于存储,但速度会很慢。我预计当今所有的主板都是 USB 2.0 或 3.0,但如果您购买的 NAS 不是由 PC 组件制成的,那么很有可能它是一个仅用于连接键盘和鼠标的 1.1 端口。

答案4

即使您的 NAS 有 USB 2 或 USB 3 端口,您的读卡器也可能只有 USB 1.1 端口。如果是这样的话,速度会非常慢。您可以使用 USB 2 或 3 读卡器来加快速度。

但是我买了两个读卡器,我不记得包装上标明了 USB 版本。来自信誉较好的供应商的读卡器可能会标明 USB 版本。

编辑:我的 Dynex DX-CRMN1 的包装盒上写着它有一个 USB 2.0 接口。我的错。

相关内容