Some questions below...
On Dec 23, 2009, at 8:27 AM, Auke Folkerts wrote:
Hello,
We have performed several tests to measure the performance
using SSD drives for the ZIL.
Tests are performed using a X4540 "Thor" with a zpool consisting of
3 14-disk RaidZ2 vdevs. This fileserver is connected to a Centos 5.4
machine which mounts a filesystem on the zpool via NFS, over a
dedicated, direct, 1Gb ethernet link.
The issue we're trying to resolve by using SSD's, is the much-
discussed
slow NFS performance when using synchronous IO. Unfortunately,
asynchronous IO is not possible, since the Solaris NFS server is
synchronous by default, and the linux clients are unable to request
asynchronous NFS traffic.
The SSD devices we've used are OCZ Vertex Turbo 30Gb disks.
Data was gathered using iozone from the centos machine:
(iozone -c -e -i 0 -i 1 -i 2 -o -a).
The raw data as well as the graphs that I created are available on
request, should people be interested.
Yes, can you post somewhere?
Since we are interested in using the Thor as an NFS file server
for homedirectories, we are mostly concerned about random write
performance.
We have made the following observations:
- Using SSD devices as ZIL logs yields a factor 2 improvement in
throughput
when using a recordsize <= 128k, in comparison to using the internal
ZIL devices of the pool (ie. not setting up slog devices).
- With recordsizes of 1MB and up, having the ZIL reside on the raw
disks of
pool (no separate slog devices) outperforms using SSD's as a slog
device.
- Disabling the ZIL altogether yields significantly better performance
(at least a factor 10).
We had hoped that using SSD's would yield better performance. It is
possible we will see an improvement with Intel X25-E series SSD's,
but those haven't arrived yet so we can't test that.
An alternative test we performed was extracting a 138Mb tarfile
consisting of ~2000 small files. With the ZIL disabled, extracting
the file took 4 seconds.
With the ZIL enabled, but with no specific slog devices in the pool
(thus using the disks in the pool), extraction took 72seconds. Using
the SSD's as log devices, the time required was reduced to 34 seconds.
This corresponds to the ~factor 2 improvement we noticed using our
iozone benchmark. For this specific workload, we noticed no
difference
in using 1 or 2 (striped) slog SSD's.
Questions:
1. Client wsize?
2. Client NFS version?
3. logbias settings?
4. Did you test with a Solaris NFS client? If not, why not?
At the bottom line, lets end up with a few specific questions:
1. Is this performance using SSD's as expected? Can we expect better
performance
using Intel X25-E SSD's?
2. Disabling the ZIL looks like a serious option, after these
performance
benchmarks. I would expect to see Disabling the ZIL as an
"officially supported
option", given that we all have used UFS for years, which is no
better in
terms of reliability. Is there an "Official Sun Response" to this?
UFS is a totally different issue, sync writes are always sync'ed.
I don't work for Sun, but it would be unusual for a company to accept
willful negligence as a policy. Ambulance chasing lawyers love that
kind of thing.
-- richard
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss