我在Sata 3界面的笔记本电脑(三星840 Pro)中安装了128 GB的SSD。这款笔记本电脑还配备了i5 3210m Ivy Bridge Intel处理器和8 GB RAM。
我使用图形安装程序安装了Ubuntu 12.10,以进行全盘加密。我有点失望,因为我期望规格必须产生比我得到的更好的结果。
在查看此SSD Benchmarking页面时,它声称我的处理器能够执行以下操作:
- 〜500 MB / s:使用AES-NI
- 〜200 MB / s:没有AES-NI
看我得到的数字,我想可能没有启用AES-NI。但首先 ...
读取未加密的数据非常快:
# hdparm -Tt /dev/sda1
/dev/sda1:
Timing cached reads: 14814 MB in 2.00 seconds = 7411.70 MB/sec
Timing buffered disk reads: 242 MB in 0.48 seconds = 502.75 MB/sec
这实际上接近于我的SSD的“最高530 MB / s”规格,并且进行dd
测试得出的结果与上述类似。
使用dm-crypt写入加密数据也非常快(否则,使用eCryptfs写入时的性能非常糟糕,低于100 MB / s),这个数字接近SSD规格(我想写入有缓冲之类的东西):
# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.93896 s, 365 MB/s
但是,读取加密数据是另一回事:
# echo 3 > /proc/sys/vm/drop_caches
# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.85956 s, 183 MB/s
在编写此消息时,实际上我很幸运能够达到183 MB / s,因为该数字各不相同。通常,它的速度约为150 MB / s,但是在全新启动时我的速度也接近300 MB / s,但是随后在没有启动任何应用程序的情况下,性能逐渐下降至200 MB / s以下。请注意,进行此测试时,我没有其他正在执行I / O的进程(如所示iotop
)。
此外,这是hdparm
产生较差结果的测试:
# hdparm -Tt /dev/mapper/sda2_crypt
/dev/mapper/sda2_crypt:
Timing cached reads: 14816 MB in 2.00 seconds = 7412.86 MB/sec
Timing buffered disk reads: 422 MB in 3.01 seconds = 140.11 MB/sec
我还通过观察来尝试该实验htop
...由于i5处理器具有超线程功能,因此不确定如何解释我所看到的内容,但是4个线程中有2个线程在测试期间约占73%的使用率,而另一个2个未使用的线程。确实,如果我开始dd
从2个不同的文件读取2个进程(以防止缓冲),则iotop
报告的总速度约为400 MB / s。因此,这绝对感觉像是受CPU限制。
我的失望来自于我的i5处理器能够支持AES-NI的事实。使用与上面相同的测试,未加密的数据以500 MB / s的速度读取。因此,我们谈论的是加密分区至少慢3倍。
我真的不知道我的dm-crypt安装是否正在使用AES-NI。这是输出lsmod
:
# lsmod | grep aes
aesni_intel 51038 35
cryptd 20404 10 ghash_clmulni_intel,aesni_intel
aes_x86_64 17256 1 aesni_intel
这是输出cryptsetup
:
# cryptsetup status sda2_crypt
/dev/mapper/sda2_crypt is active and is in use.
type: LUKS1
cipher: aes-xts-plain64
keysize: 512 bits
device: /dev/sda2
offset: 4096 sectors
size: 249565184 sectors
mode: read/write
flags: discards
那么,这是预期的吗?AES-NI是否应该在此方面做更多的改进?
另外,如何禁用AES-NI以查看是否存在差异?也许我应该以某种方式启用它,但是在搜索中没有找到任何提示。
谢谢,