Poor ZFS prefetch performance
Andrew Snow
andrew at modulus.org
Tue Aug 26 22:20:36 UTC 2008
On latest 8-current with latest patches, I am seeing poor data prefetch
hit rate with my workload of rsync on millions of files.
ZFS has been quite good apart from this - UFS was much faster at this
particular workload. ZFS just seems to be reading many megabytes over
and over from the filesystem with little to show for it.
Arcstats reports the following:
kstat.zfs.misc.arcstats.prefetch_data_hits: 475476
kstat.zfs.misc.arcstats.prefetch_data_misses: 5325057
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 126411515
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 3998476
I don't really want to turn of prefetching completely because it does
actually help in many situations.
From this I deduce it would be really nice to provide an extra tunable
that allows you to turn off prefetching for data but leave it on for
metadata.
This would be easy to do because data prefetches come in through
dmu_zfetch, but metadata comes through dmu_prefetch() in dmu.c
- Andrew
More information about the freebsd-fs
mailing list