IBM blade server abysmal disk write performances
Karim Fodil-Lemelin
fodillemlinkarim at gmail.com
Tue Jan 15 20:29:03 UTC 2013
On 15/01/2013 3:03 PM, Dieter BSD wrote:
> Disabling the disks's write cache is *required* for data integrity.
> One op per rev means write caching is disabled and no queueing.
> But dmesg claims "Command Queueing enabled", so you should be getting
> more than one op per rev, and writes should be fast.
> Is this dd to the raw drive, to a filesystem? (FFS? ZFS? other?)
> Are you running compression, encryption, or some other feature
> that might slow things down? Also, try dd with a larger block size,
> like bs=1m.
Hi,
Thanks to everyone that answered so far. Here is a follow up. dd to the
raw drive and no compression/encryption or some other features, just a
naive boot off a live 9.1 CD then dd (see below). The following results
have been gathered on the FreeBSD 9.1 system:
# dd if=/dev/zero of=toto count=100
100+0 records in
100+0 records out
51200 bytes transferred in 1.057507 secs (48416 bytes/sec)
# dd if=/dev/zero of=toto count=100 bs=104
100+0 records in
100+0 records out
10400 bytes transferred in 1.209524 secs (8598 bytes/sec)
# dd if=/dev/zero of=toto count=100 bs=1024
100+0 records in
100+0 records out
102400 bytes transferred in 0.844302 secs (121284 bytes/sec)
# dd if=/dev/zero of=toto count=100 bs=10240
100+0 records in
100+0 records out
1024000 bytes transferred in 2.173532 secs (471123 bytes/sec)
# dd if=/dev/zero of=toto count=100 bs=102400
100+0 records in
100+0 records out
10240000 bytes transferred in 19.915159 secs (514181 bytes/sec)
# dd if=/dev/zero of=toto count=100
100+0 records in
100+0 records out
51200 bytes transferred in 1.070473 secs (47829 bytes/sec)
# dd if=/dev/zero of=foo count=100
100+0 records in
100+0 records out
51200 bytes transferred in 0.683736 secs (74883 bytes/sec)
# dd if=/dev/zero of=foo count=100 bs=1024
100+0 records in
100+0 records out
102400 bytes transferred in 0.682579 secs (150019 bytes/sec)
# dd if=/dev/zero of=foo count=100 bs=10240
100+0 records in
100+0 records out
1024000 bytes transferred in 2.431012 secs (421224 bytes/sec)
# dd if=/dev/zero of=foo count=100 bs=102400
100+0 records in
100+0 records out
10240000 bytes transferred in 19.963030 secs (512948 bytes/sec)
# dd if=/dev/zero of=foo count=10 bs=1024000
10+0 records in
10+0 records out
10240000 bytes transferred in 19.615134 secs (522046 bytes/sec)
# dd if=/dev/zero of=foo count=1 bs=10240000
1+0 records in
1+0 records out
10240000 bytes transferred in 19.579077 secs (523007 bytes/sec)
Best regards,
Karim.
More information about the freebsd-hackers
mailing list