Re: xs_ig_attempts ≠ xs_ig_found + xs_ig_missed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 26, 2021 at 10:36:41AM +0200, Paul Menzel wrote:
> Dear Linux folks,
> 
> 
> In the internal statistics [1] the attempts to look up an inode in the inode
> cache (`xs_ig_attempts`) is a little bigger (35) than the sum of found and
> missed entries minus duplicates (`xfs.inode_ops.ig_dup`): 651067226 =
> 651067191 + 35 > 651067191 = 259143798 + 391923706 - 313.
> 
>     $ grep ^ig /sys/fs/xfs/sdc/stats/stats # hardware RAID
>     ig 651067226 259143798 75 391923706 313 391196609 8760483
> 
> For the software RAID device there is no difference: 794085909 = 293058663 +
> 501027325 - 79.
> 
>     $ grep ^ig /sys/fs/xfs/md0/stats/stats
>     ig 794085909 293058663 18555 501027325 79 500997366 320679
> 
> Is the first difference expected?

Yes. XFS stats are low overhead unsynchronised per-cpu counters,
never guaranteed to be perfectly accurate or consistent because,
well, unsycnhronised per-cpu counters are neither.

IOWs, individual counters are never "point in time" accurate because of
counter update races during aggregation. Multiple counters are never
"point in time" synchronised, either, as individual
counters are aggregated sequentially and hence have different,
unsynchronised sampling times.

IOWs, the stats are not really meaningful as aboslute values - they
are generally used for monitoring purposes via delta sampling (e.g.
"how many of these events happened in the last second") or checking
that certain operations have occurred as a basic code coverage check
for developers (e.g. did we split the freespace inode btree at all
during a fstests run?).....

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux