将分区对齐到 SSD / 条带化 RAID / 4kB 驱动器的实际物理扇区上是'好事',但是当我尝试对包含 ext3 的 truecrypt 分区执行此操作时,我遇到了问题。或者看起来是这样。
当有问题的驱动器正确分区并使用 ext3 格式化时,我可以获得非常合理的写入速度,大约 70-80MB/s,但是当我将 truecrypt 和 ext3 放在其顶部时,写入性能变得非常不稳定,在 1-25MB/s 之间变化,并且 io-wait 非常高。在同一台服务器上,在普通的 512B 扇区 500GB SATA 磁盘上,在 truecrypt 顶部使用 ext3 没有任何性能问题。所以我最好的猜测是 iowaits 是由错位引起的,但我真的找不到关于如何计算最佳分区开头的可靠信息。我尝试从 128 个逻辑扇区启动它,我也尝试过 8132 个扇区,正如建议的那样这里但两者都给我带来了非常糟糕和不稳定的性能。
您有类似设置的经验吗?谢谢!
ps - 引用 truecrypt 论坛的话:当我使用 Truecrypt 加密分区时,我只能获得 8Mbyte/sec 的速度,因为它没有将卷的起始位置放在扇区 8192,而是将卷放在 8192 所属轨道的末尾。每个轨道有 63 个扇区,因此扇区 8192 是第 130 个轨道的第二个扇区。Truecrypt 将其卷的起始位置放在此轨道的末尾(扇区号 8252),这比原来的位置多 60 个扇区。因此,解决方案是将分区向后移动 60 个扇区,这样分区的起始位置就是 8132,而不是 8192。这导致 Truecrypt 卷的第一个扇区位于魔术扇区 8192。
答案1
经过一些谷歌搜索和一些自己的测试后,我得出结论,它的驱动器有故障。其他人也有类似的问题使用 WD15EADS 磁盘。对正确对齐的 ext3 分区进行长时间测试也显示性能下降。
我已经循环运行:
dd if=/dev/zero of=/mnt/1_5tb0/out bs=1MB count=45000
并导致性能下降:
45000000000 bytes (45 GB) copied, 652.667 s, 68.9 MB/s
45000000000 bytes (45 GB) copied, 648.647 s, 69.4 MB/s
45000000000 bytes (45 GB) copied, 645.147 s, 69.8 MB/s
45000000000 bytes (45 GB) copied, 655.122 s, 68.7 MB/s
45000000000 bytes (45 GB) copied, 644.662 s, 69.8 MB/s
45000000000 bytes (45 GB) copied, 645.12 s, 69.8 MB/s
45000000000 bytes (45 GB) copied, 648.025 s, 69.4 MB/s
45000000000 bytes (45 GB) copied, 650.528 s, 69.2 MB/s
45000000000 bytes (45 GB) copied, 1247.87 s, 36.1 MB/s
45000000000 bytes (45 GB) copied, 1601.76 s, 28.1 MB/s
45000000000 bytes (45 GB) copied, 1776.75 s, 25.3 MB/s
在某些时刻,系统几乎停止运行,iowait非常高+iostat中的磁盘活动很少[例如2-10 iops/秒]。
附言::之前的 1.5TB 磁盘已被移除,安装了新的磁盘 - 所有问题都消失了。所以这是硬件问题。
答案2
TrueCrypt 是否在分区的其余部分之前添加了任何标头块?如果确实如此,那么它实际上可能会使您对齐良好的分区重新失衡。您可以尝试故意将分区错开每个可能的量(这意味着最多 7 次测试,因为 4k 块可能以 0.5k 的倍数偏离不同的方式)并重复测试。如果问题是标头信息将数据主体推离偏移,那么其中一个测试应该会比其他测试显示更好的结果。这假设添加的任何标头信息(或偏移的其他原因)都是 512 字节或其倍数(这将是合理的,而且似乎确实如此,因为您在具有 512 字节扇区的驱动器上没有看到类似的性能下降)。