Eu tenho um SSD de 128 GB instalado no meu laptop (Samsung 840 Pro) em uma interface Sata 3. Este laptop também tem um processador Intel Ivy Bridge de 3210m i5 e 8 GB de RAM.
Eu instalei o Ubuntu 12.10, usando o instalador gráfico para obter a criptografia de disco completo. Estou meio que desapontado, porque esperava que as especificações tivessem resultados melhores do que o que recebo.
Enquanto olhamos para esta página de Análise comparativa de SSDs , afirma que o meu processador consegue:
- ~ 500 MB / s: com AES-NI
- ~ 200 MB / s: sem AES-NI
Olhando para os números que recebo, acho que posso não ter o AES-NI ativado. Mas primeiro ...
A leitura de dados não criptografados é rápida:
# 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
Isso é realmente próximo das especificações do meu SSD de "até 530 MB / s" e fazer um teste dd
produz resultados semelhantes aos acima.
Escrever dados criptografados também é rápido com dm-crypt (caso contrário, com o eCryptfs, o desempenho na gravação é péssimo, inferior a 100 MB / s), sendo os números próximos da especificação SSD (acho que a gravação está em buffer ou algo assim):
# 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
No entanto, a leitura de dados criptografados é outra história:
# 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
Enquanto escrevia esta mensagem, tive sorte de obter 183 MB / s, porque esse número varia. Normalmente, é algo em torno de 150 MB / s, mas eu também cheguei perto de 300 MB / s em uma inicialização recente, mas o desempenho cai gradualmente para menos de 200 MB / s sem que eu inicie nenhum aplicativo. Observe que, durante a realização deste teste, não tenho outros processos que estejam fazendo E / S (como visto em iotop
).
Além disso, aqui está o teste com hdparm
, que produz resultados piores:
# 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
Eu também experimentei o experimento olhando htop
... não sei como interpretar o que eu vi, já que o processador i5 faz Hyper-Threading, mas 2 threads de 4, onde cerca de 73% de uso durante o teste, enquanto os outros 2 tópicos não foram utilizados. De fato, se eu começar 2 processos que estão lendo com dd
de 2 arquivos distintos (para evitar buffer), então iotop
informa um total de aproximadamente 400 MB / s. Então, isso definitivamente parece que está ligado à CPU.
Minha decepção vem do fato de que meu processador i5 é capaz de AES-NI . Dados não criptografados estão sendo lidos em mais de 500 MB / s usando os mesmos testes que fiz acima. Então estamos falando de uma partição criptografada sendo pelo menos 3 vezes mais lenta.
Eu realmente não sei se a minha instalação do dm-crypt está usando o AES-NI. Aqui está a saída de lsmod
:
# lsmod | grep aes
aesni_intel 51038 35
cryptd 20404 10 ghash_clmulni_intel,aesni_intel
aes_x86_64 17256 1 aesni_intel
Aqui está a saída de 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
Então, isso é esperado? O AES-NI não deveria melhorar as coisas mais do que isso?
Além disso, como desativar o AES-NI para ver se há alguma diferença? E talvez eu deva habilitá-lo de alguma forma, mas não encontrei nenhuma dica nas minhas pesquisas.
Obrigado,