ZFS tuning [was: hardware for home use large storage]
jhell
jhell at DataIX.net
Tue Feb 16 01:50:07 UTC 2010
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Mon, 15 Feb 2010 16:20, 000.fbsd@ wrote:
> Alexander Leidinger wrote:
>
> [...]
>
>>> kstat.zfs.misc.arcstats.c
>>> kstat.zfs.misc.arcstats.c_min
>>> kstat.zfs.misc.arcstats.c_max
>>
>> c_max is vfs.zfs.arc_max, c_min is vfs.zfs.arc_min.
>>
>>> kstat.zfs.misc.arcstats.evict_skip
>>> kstat.zfs.misc.arcstats.memory_throttle_count
>>> kstat.zfs.misc.arcstats.size
>>
>> I'm not very sure about size and c... both represent some kind of
>> current size, but they are not the same.
>>
>>
>> About the tuning I would recommend to depend upon a more human readable
>> representation. I've seen someone posting something like this, but I do
>> not know how it was generated (some kind of script, but I do not know
>> where to get it).
>
> I think you are referring to this script:
> http://cuddletech.com/arc_summary/
> and its FreeBSD version
> http://bitbucket.org/koie/arc_summary/changeset/dbe14d2cf52b/
>
> It gives output like this:
>
> # arc_summary.sh
>
> System Memory:
> Physical RAM: 4978 MB
> Free Memory : 755 MB
>
> ARC Size:
> Current Size: 1028 MB (arcsize)
> Target Size (Adaptive): 1028 MB (c)
> Min Size (Hard Limit): 50 MB (zfs_arc_min)
> Max Size (Hard Limit): 1205 MB (zfs_arc_max)
>
> ARC Size Breakdown:
> Most Recently Used Cache Size: 93% 963 MB (p)
> Most Frequently Used Cache Size: 6% 65 MB (c-p)
>
> ARC Efficency:
> Cache Access Total: 358720716
> Cache Hit Ratio: 97% 350351031 [Defined State for
> buffer]
> Cache Miss Ratio: 2% 8369685 [Undefined State for
> Buffer]
> REAL Hit Ratio: 76% 272917080 [MRU/MFU Hits Only]
>
> Data Demand Efficiency: 96%
> Data Prefetch Efficiency: 27%
>
> CACHE HITS BY CACHE LIST:
> Anon: 22% 77179355 [ New Customer,
> First Cache Hit ]
> Most Recently Used: 45% 158252587 (mru) [ Return
> Customer ]
> Most Frequently Used: 32% 114664493 (mfu) [ Frequent
> Customer ]
> Most Recently Used Ghost: 0% 9777 (mru_ghost) [ Return
> Customer Evicted, Now Back ]
> Most Frequently Used Ghost: 0% 244819 (mfu_ghost) [
> Frequent Customer Evicted, Now Back ]
> CACHE HITS BY DATA TYPE:
> Demand Data: 1% 4375918
> Prefetch Data: 0% 150148
> Demand Metadata: 76% 267830502
> Prefetch Metadata: 22% 77994463
> CACHE MISSES BY DATA TYPE:
> Demand Data: 1% 135956
> Prefetch Data: 4% 400434
> Demand Metadata: 73% 6177748
> Prefetch Metadata: 19% 1655547
> ---------------------------------------------
>
>
> Another useful script is arcstat.pl from
> http://blogs.sun.com/realneel/entry/zfs_arc_statistics
> There are FreeBSD version floating around but I can't find a link to it, so I
> am sending it as attachment.
>
> It would be nice to have some "standardized" scripts for monitoring &
> debugging ZFS issues attached to FreeBSD Wiki page about ZFS tuning. Then
> everebody will use the same scripts, same output format. It will be easier to
> compare results in discussions etc.
>
> So if anybody of you have write permissions to Wiki, can you add those two
> scripts? (or make some better ;])
>
> Understanding to tuning of ZFS is really hard with lack of documentation ;(
>
> Miroslav Lachman
>
It is funny that you guys are all of a sudden talking about this, as I was
just working on some modifications to the arc_summary.pl script for some
better formatting and inclusion of kmem statistics.
My intent on the modifications is to make the output more usable to the
whole community by revealing the relevant system information that can be
included in an email to the lists for diagnosis by others.
Previously the output of the script was a little bit groggy, had long
lines and did not include relevant "other" system information.
Currently I am working on cleaning up the code a little and moving the ZFS
Tunable section to the bottom of the output where it will actually
contain the values of the sysctl's instead of just being a blank list.
I would certainly appreciate any feedback I could get from this & other
things you think might be relevant in its output.
Thanks for bringing this subject up.
As I make final modifications to the script I will keep the below URLs
updated and welcome any bug reports or modification requests to me
personally.
Here is the URLs:
http://jhell.googlecode.com/files/arc_summary.pl
http://jhell.googlecode.com/files/arc_summary.pl.asc
MD5 (arc_summary.pl) = bff13dcf119ff979d9aa52b3d8ae53b9
SHA256 (arc_summary.pl) = a29260946760a89614f888d53d0f188fb24bcd96acd5e0917604d494ed843ada
SIZE (arc_summary.pl) = 9453
Example output:
- ---------------------------------------------------------------------
System Summary
OS Revision: 199506
OS Release Date: 703100
Hardware Platform: i386
Processor Architecture: i386
Storage pool Version: 13
Filesystem Version: 3
Kernel Memory Usage
TEXT: 8950208 KiB, 8 MiB
DATA: 206347264 KiB, 196 MiB
TOTAL: 215297472 KiB, 205 MiB
FreeBSD 7.3-STABLE #0 r203819M Sun Feb 14 15:40:02 EST 2010 root
- ---------------------------------------------------------------------
ZFS ARC Summary Report
System Memory:
Physical RAM: 1009 MiB
ZFS Tunable (sysctl):
vfs.zfs
vm.kmem_size
vm.kmem_size_max
ARC Size:
Current Size: 180 MiB (arcsize)
Target Size (Adaptive): 182 MiB (c)
Min Size (Hard Limit): 80 MiB (arc_min)
Max Size (Hard Limit): 480 MiB (arc_max)
ARC Size Breakdown:
Recently Used Cache Size: 99% 181 MiB (p)
Frequently Used Cache Size: 0% 1 MiB (c-p)
ARC Efficiency:
Cache Access Total: 32355906
Cache Hit Ratio: 97% 31473948
Cache Miss Ratio: 2% 881958
Actual Hit Ratio: 89% 28801408
Data Demand Efficiency: 99%
Data Prefetch Efficiency: 44%
CACHE HITS BY CACHE LIST:
Anonymous: 7% 2303558
Most Recently Used: 13% 4157073 (mru)
Most Frequently Used: 78% 24644335 (mfu)
Most Recently Used Ghost: 0% 151893 (mru_ghost)
Most Frequently Used Ghost: 0% 217089 (mfu_ghost)
CACHE HITS BY DATA TYPE:
Demand Data: 73% 23206273
Prefetch Data: 0% 14877
Demand Metadata: 14% 4611670
Prefetch Metadata: 11% 3641128
CACHE MISSES BY DATA TYPE:
Demand Data: 23% 206991
Prefetch Data: 2% 18760
Demand Metadata: 53% 471124
Prefetch Metadata: 20% 185083
- ---------------------------------------------------------------------
- --
jhell
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)
iQEcBAEBAgAGBQJLefm5AAoJEJBXh4mJ2FR+2wYIAIpC6zPj4/ioak8TspN1blCV
LSNG/JXbqat9/e6EAulBSDaF81AyxKrUNMZxQqgNZ+fobhT4AY3odrlhUNbNX9UX
r8juktvG2kXhgpKmjYeP+HSM5KKbXZToBNx+sHwaTGKAybyTBNuhupmrbeGoOZVX
tmH6C/ZoOANtxmcHVOGDi/fViC1tTf396iBietaCGtKNJ5S6ziqa3DgJgzrJkSQI
2lYNKqcdusUPyxl22ug24Ifsp3TFn2fFYB22durAaXL9ZPHWruWVD2wQ02EPxdND
FmdheGS6OPKEG6Ph2ARTuJpJLZCPoN2EQJivkXI6N2WgsK+QRuZhuylVzDvu/3A=
=SSRg
-----END PGP SIGNATURE-----
More information about the freebsd-stable
mailing list