[ops][nova] Quick show of hands: any use Intel (non-CMT) `perf` events?

Kashyap Chamarthy kchamart at redhat.com
Thu Jul 4 10:31:48 UTC 2019


Heya folks,

While removing some dead code I was wondering if anyone here uses
"non-CMT" (Cache Monitoring Technology) performance events events?  I'm
referring to the events here[0], besides the first three, which are
CMT-related.

Background
----------

The Intel CMT events (there are three of them) were deprecated during
the Rocky release, in this[1] commit, and with this rationale:

    Upstream Linux kernel has deleted[*] the `perf` framework integration
    with Intel CMT (Cache Monitoring Technology; or "CQM" in Linux kernel
    parlance), because the feature was broken by design -- an
    incompatibility between Linux's `perf` infrastructure and Intel CMT
    hardware support.  It was removed in upstream kernel version v4.14; but
    bear in mind that downstream Linux distributions with lower kernel
    versions than 4.14 have backported the said change.
    
    Nova supports monitoring of the above mentioned Intel CMT events
    (namely: 'cmt', 'mbm_local', and 'mbm_total') via the configuration
    attribute `[libvirt]/enabled_perf_events`. Given that the underlying
    Linux kernel infrastructure for Intel CMT is removed, we should remove
    support for it in Nova too.  Otherwise enabling them in Nova, and
    updating to a Linux kernel 4.14 (or above) will result in instances
    failing to boot.
    
    To that end, deprecate support for the three Intel CMT events in
    "Rocky" release, with the intention to remove support for it in
    the upcoming "Stein" release.  Note that we cannot deprecate /
    remove `enabled_perf_events` config attribute altogether --
    since there are other[+] `perf` events besides Intel CMT.
    Whether anyone is using those other events with Nova is a good
    question to which we don't have an equally good answer for, if
    at all.

Now we're removing[2] support for CMT events altogether.

Question
--------

What I'm wondering now is the answer to the last sentence in the above
quoted commit: "Whether anyone is using those other events with Nova is
a good question to which we don't have an equally good answer for, if at
all".

If we know that "no one" (as if we can tell for sure) is using them, we
can get rid of more dead code.

So, any operators using the non-CMT events from here[0]?

[0] https://libvirt.org/formatdomain.html#elementsPerf
[1] https://opendev.org/openstack/nova/commit/fc4794acc6 —libvirt:
    Deprecate support for monitoring Intel CMT `perf` events 
[2] https://review.opendev.org/669129 — libvirt: Remove support for
    Intel CMT `perf` event

-- 
/kashyap



More information about the openstack-discuss mailing list