Menu Close

8.9. Glock 统计

GFS2 维护可帮助您跟踪文件系统中正在运行的统计信息。这可让您发现性能问题。

GFS2 维护两个计数器:

  • dcount 统计请求的 DLM 操作数量。这显示了数据量的 mean/variance 值。
  • qcount 统计请求的 syscall 级别操作数量。通常 qcount 等于或大于 dcount

另外,GFS2 维护三个平均/变量对。平均/变量对是平滑度估算,使用的算法是用于计算网络代码中往返时间的算法。

GFS2 中维护的 mean 和 variance 值没有经过 scale 处理,而是以整数纳秒为单位。

  • srtt/srttvar:非阻塞操作的平稳往返时间
  • srttb/srttvarb:阻塞操作的平稳往返时间
  • irtt/irttvar:在请求的间时间(例如,DLM 请求之间的时间)

非阻塞请求是一个马上完成的请求,无论有疑问的 DLM 锁定状态如何。这当前意味着,请求的条件为 (a) 当前的锁定状态为专用( exclusive);(b) 请求的状态为 null 或者非锁定(unlocked);或 (c) 设定了"try lock"标记。其他锁定请求都为阻塞请求。

对于 IRTTs 来说,较大的时间比较好;对于 RTTs 来说,比较小的时间更好。

统计数据保存在两个 sysfs 文件中:

  • glstats 文件。这个文件与 glocks 文件类似,但它包含统计信息,每个 glock 一行。数据从那个 glock 类型的"每个 cpu"数据初始化,数据会被创建 glock(来自计数器,零)。这个文件可能非常大。
  • lkstats 文件。它为每个 glock 类型包含 "per cpu" 统计信息。它每行包含一个统计数据,每列都是一个 cpu 内核。每个 glock 类型有 8 行,一个类型跟随另一个类型。