Re: [PATCH] KVM: selftests: Test top-down slots event

From: Sean Christopherson
Date: Thu Feb 01 2024 - 13:07:34 EST


On Thu, Feb 01, 2024, Dapeng Mi wrote:
> Although the fixed counter 3 and the exclusive pseudo slots events is
> not supported by KVM yet, the architectural slots event is supported by
> KVM and can be programed on any GP counter. Thus add validation for this
> architectural slots event.
>
> Top-down slots event "counts the total number of available slots for an
> unhalted logical processor, and increments by machine-width of the
> narrowest pipeline as employed by the Top-down Microarchitecture
> Analysis method." So suppose the measured count of slots event would be
> always larger than 0.

Please translate that into something non-perf folks can understand. I know what
a pipeline slot is, and I know a dictionary's definition of "available" is, but I
still have no idea what this event actually counts. In other words, I want a
precise definition of exactly what constitutes an "available slot", in verbiage
that anyone with basic understanding of x86 architectures can follow after reading
the whitepaper[*], which is helpful for understanding the concepts, but doesn't
crisply explain what this event counts.

Examples of when a slot is available vs. unavailable would be extremely helpful.

[*] https://www.intel.com/content/www/us/en/docs/vtune-profiler/cookbook/2023-0/top-down-microarchitecture-analysis-method.html