Module Data_structures.Metrics

Performance monitoring for lock-free structures

type operation_metrics = {
  1. operation_count : int64 Atomic.t;
  2. total_latency_ns : int64 Atomic.t;
  3. max_latency_ns : int64 Atomic.t;
  4. contentions : int64 Atomic.t;
}
type operation_stats = {
  1. operation_count : int64;
  2. total_latency_ns : int64;
  3. max_latency_ns : int64;
  4. contentions : int64;
}
val create_metrics : unit -> operation_metrics
val record_operation : operation_metrics -> int64 -> unit
val record_contention : operation_metrics -> unit
val get_avg_latency_ns : operation_metrics -> int64