All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marc MERLIN <marc@merlins.org>
To: Milan Broz <mbroz@redhat.com>, dm-crypt@saout.de
Subject: Re: [dm-crypt] aes-xts-plain with aes_x86_64 makes my SSD 5x slower than my encrypted HD
Date: Tue, 24 Jul 2012 08:38:06 -0700	[thread overview]
Message-ID: <20120724153806.GB14273@merlins.org> (raw)
In-Reply-To: <20120724145817.GC21730@fancy-poultry.org>

On Tue, Jul 24, 2012 at 04:58:17PM +0200, Heinz Diehl wrote:
> On 24.07.2012, Heinz Diehl wrote: 
> 
> [....]
> 
> And that's obviously not all. The problem occurs also with _unencrypted_
> partitions/devices, here's the proof (/dev/sda1 is a 500M ext2
> partition mounted on /boot; using the same Hitachi rotational drive as
> in my previous test):
> 
> [root@wildsau /]# blockdev --setra 8192 /dev/sda1
> [root@wildsau /]# hdparm -t /dev/sda1
> Timing buffered disk reads: 236 MB in  3.00 seconds =  78.57 MB/sec
 
Funny you'd say that. I checked mine (with 3.4.4)

By default, it comes with:
gandalfthegreat:~# blockdev --report /dev/sda2
RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096     502272     26843283456   /dev/sda2

gandalfthegreat:~# blockdev --setra 0 /dev/sda2
gandalfthegreat:~# hdparm -t /dev/sda2
/dev/sda2:
 Timing buffered disk reads:   2 MB in  4.81 seconds = 425.77 kB/sec

gandalfthegreat:~# hdparm --direct -t /dev/sda2
/dev/sda2:
 Timing O_DIRECT disk reads: 432 MB in  3.01 seconds = 143.68 MB/sec
 
So I know it doens't make sense, but apparently it's SSD/machine sensitive
and for me the default of 256 is enough for the block device, but not enough 
for a dm-crypt'ed device. 

I just checked that my other dmcrypt device I just created:
gandalfthegreat:~# blockdev --report /dev/mapper/test 
RO    RA   SSZ   BSZ   StartSec            Size   Device
rw   256   512  4096          0     26839089152   /dev/mapper/test

So I do get 256 RA consistently and it's enough for the raw block device,
but not enough for a dm-crypted device.

gandalfthegreat:~# hdparm -t /dev/mapper/test 
/dev/mapper/test:
 Timing buffered disk reads:  66 MB in  3.05 seconds =  21.62 MB/sec

By the way, just for run, I tried 
cryptsetup luksFormat --align-payload=8192 -c twofish-xts-plain64 /dev/sda2
instead of
cryptsetup luksFormat --align-payload=8192 -c aes-xts-plain  /dev/sda2
since it was suggested that it might be faster on recent laptops.

Well, on a Lenovo 530 with 
model name	: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
I get 177 MB/s for twofish-xts-plain64 and 281 MB/s for aes-xts-plain
For comparison, I got 406 MB/s for null dmcrypt.

So it sounds like for my SSD, aes-xts-plain is the fastest with aesni_intel
once I've run blockdev --settra 8192.

I tried --settra 81920 (10x more) and it raised aes-xts-plain from 281MB/s
to 298MB/s and null dmcrypt 406MB/s to 446MB/s.

Hope this helps.

Marc
-- 
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
                                      .... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/  

  reply	other threads:[~2012-07-24 15:38 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-22 19:07 [dm-crypt] aes-xts-plain with aes_x86_64 makes my SSD 5x slower than my encrypted HD Marc MERLIN
2012-07-22 19:47 ` Yves-Alexis Perez
2012-07-22 20:39   ` Marc MERLIN
2012-07-22 21:47     ` Arno Wagner
2012-07-23  6:07       ` Yves-Alexis Perez
2012-07-23  6:28       ` Marc MERLIN
2012-07-23  8:14         ` Arno Wagner
2012-07-23 10:46           ` Milan Broz
2012-07-23 11:09             ` Yves-Alexis Perez
2012-07-23 11:37               ` Milan Broz
2012-07-23 15:08                 ` André Gall
2012-07-23 17:27                 ` André Gall
2012-07-24 14:06             ` Heinz Diehl
2012-07-24 14:16               ` Milan Broz
2012-07-23 16:12           ` Marc MERLIN
2012-07-23 16:19             ` Yves-Alexis Perez
2012-07-23 17:54               ` Marc MERLIN
2012-07-23 19:26                 ` Yves-Alexis Perez
2012-07-23 17:15             ` Milan Broz
2012-07-23 17:51               ` Marc MERLIN
2012-07-23 21:31                 ` Milan Broz
2012-07-24  5:57                   ` Marc MERLIN
2012-07-24  6:25                     ` Heinz Diehl
2012-07-24 15:02                       ` Marc MERLIN
2012-07-24 15:19                         ` Milan Broz
2012-07-24 16:09                           ` Marc MERLIN
2012-07-24 13:54                     ` Milan Broz
     [not found]                       ` <500E9099.8050501@redhat.com>
2012-07-24 14:27                       ` Heinz Diehl
2012-07-24 14:58                         ` Heinz Diehl
2012-07-24 15:38                           ` Marc MERLIN [this message]
2012-07-24 16:48                             ` Heinz Diehl
2012-07-24  6:11                   ` Heinz Diehl
2012-07-22 21:55     ` Marc MERLIN
2012-07-22 20:22 ` Heinz Diehl
2012-08-12 12:49 ` Pasi Kärkkäinen
2012-08-16  7:43   ` Marc MERLIN
     [not found]     ` <502D1F96.3080905@andregall.de>
2012-08-16 17:57       ` Marc MERLIN

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120724153806.GB14273@merlins.org \
    --to=marc@merlins.org \
    --cc=dm-crypt@saout.de \
    --cc=mbroz@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.