[OmniOS-discuss] Slow performance with ZeusRAM?
Bob Friesenhahn
bfriesen at simple.dallas.tx.us
Thu Oct 22 21:51:04 UTC 2015
On Thu, 22 Oct 2015, Matej Zerovnik wrote:
> Bob:
> Yes, my ZFS is ashift=12, since all my drives report 4k blocks (is that what you ment?). The pool is completly empty, so there is enough place for
> writes, so write speed should not be limited because of COW. Looking at iostat, there are no reads on the drives at all.
> I’m not sure where fio gets its data, probably from /dev/zero or somewhere?
To be clear, zfs does not overwrite blocks. Instead zfs modifies (in
memory) any prior data from a block, and then it writes the block data
to a new location. This is called "copy on write". If the prior data
would not be entirely overwritten and is not already cached in memory,
then it needs to be read from underlying disk.
It is interesting that you say there are no reads on the drives at
all.
> Try umounting and re-mounting your zfs filesystem (or 'zfs destroy' followed by 'zfs create') to see how performance differs on a freshly
> mounted filesystem. The zfs ARC caching will be purged when the filesystem is unmounted.
>
> If I understand you correctly, you are saying I should destroy my folders, set recordsize=4k on my pool and then create zfs folders?
It should suffice to delete the file and set recordsize=4k on the
filesystem, and then use fio to create a new file. The file retains
its original recordsize after it has been created so you would need to
create a new file.
There is maximum performance for random write if the write blocksize
matches the filesystem blocksize. There is still a catch though if
the random write is truely random because the writes may still not
match up perfectly to underlying blocks. For example (top is logical
write data and bottom is file block data):
aligned "random write" data:
XXXXXXXXXXXXXX XXXXXXXXXXXXXX
XXXXXXXXXXXXXX XXXXXXXXXXXXXX
vs unaligned "random write" data:
XXXXXXXXXXXXXX XXXXXXXXXXXXXX
XXXXXXXXXXXXXX XXXXXXXXXXXXXX XXXXXXXXXXXXXX
The writes aligned to the start of the underlying block will be much
faster.
A major benefit of your ZIL device is to help turn random writes into
fewer random writes or even sequential writes when the TXG is written
to your data drives.
It is very difficult to test raw hardware performance through zfs
filesytem access.
Bob
--
Bob Friesenhahn
bfriesen at simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
More information about the OmniOS-discuss
mailing list