[OpenIndiana-discuss] Usefulness of prefetch?

Dan Swartzendruber dswartz at druber.com
Mon Jul 9 05:21:16 UTC 2012


My file/san server has 8GB RAM (not extendable).  I've tweaked the arc
settings to give all but 256MB to arc.  Here is what arc_summary shows after
several days to let the cache get hot:

 

System Memory:

         Physical RAM:  8180 MB

         Free Memory :  347 MB

         LotsFree:      127 MB

 

ZFS Tunables (/etc/system):

 

ARC Size:

         Current Size:             2786 MB (arcsize)

         Target Size (Adaptive):   6227 MB (c)

         Min Size (Hard Limit):    894 MB (zfs_arc_min)

         Max Size (Hard Limit):    7156 MB (zfs_arc_max)

 

ARC Size Breakdown:

         Most Recently Used Cache Size:          38%    2426 MB (p)

         Most Frequently Used Cache Size:        61%    3801 MB (c-p)

 

ARC Efficency:

         Cache Access Total:             43671308

         Cache Hit Ratio:      61%       26878124       [Defined State for
buffer]

         Cache Miss Ratio:     38%       16793184       [Undefined State for
Buffer]

         REAL Hit Ratio:       60%       26585766       [MRU/MFU Hits Only]

 

         Data Demand   Efficiency:    68%

         Data Prefetch Efficiency:     1%

 

        CACHE HITS BY CACHE LIST:

          Anon:                       --%        Counter Rolled.

          Most Recently Used:         56%        15311834 (mru)         [
Return Customer ]

          Most Frequently Used:       41%        11273932 (mfu)         [
Frequent Customer ]

          Most Recently Used Ghost:    6%        1848670 (mru_ghost)    [
Return Customer Evicted, Now Back ]

          Most Frequently Used Ghost: 18%        4977067 (mfu_ghost)    [
Frequent Customer Evicted, Now Back ]

        CACHE HITS BY DATA TYPE:

          Demand Data:                76%        20624325

          Prefetch Data:               0%        50886

          Demand Metadata:            22%        5917690

          Prefetch Metadata:           1%        285223

        CACHE MISSES BY DATA TYPE:

          Demand Data:                56%        9537239

          Prefetch Data:              20%        3503843

          Demand Metadata:            18%        3180817

          Prefetch Metadata:           3%        571285

 

Unless I am misunderstanding the above, we are almost never hitting on
prefetched data, and barely ever on prefetched metadata.  Given that, is
there even a reason to leave prefetch on?  I mean, it does generate extra
reads, no?  

 

 



More information about the OpenIndiana-discuss mailing list