Page MenuHomeFreeBSD

libpmc: add support for POWER8/9 PMCs
ClosedPublic

Authored by luporl on Aug 18 2020, 7:08 PM.
Tags
None
Referenced Files
F115648416: D26113.diff
Sat, Apr 26, 1:07 PM
Unknown Object (File)
Mon, Apr 14, 8:46 AM
Unknown Object (File)
Mon, Apr 14, 4:16 AM
Unknown Object (File)
Sun, Apr 13, 11:44 PM
Unknown Object (File)
Sun, Apr 13, 10:24 PM
Unknown Object (File)
Sun, Apr 13, 9:16 PM
Unknown Object (File)
Mar 5 2025, 10:54 AM
Unknown Object (File)
Feb 27 2025, 10:04 AM
Subscribers

Details

Summary

This change adds support for POWER8/9 performance counters.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 33056
Build 30439: arc lint + arc unit

Event Timeline

luporl created this revision.

One thing we do have is the full power8/9 pmcs in src/lib/libpmc/pmu-events/arch. I think these just need to be hooked up

One thing we do have is the full power8/9 pmcs in src/lib/libpmc/pmu-events/arch. I think these just need to be hooked up

Right, yes, this helps a lot.
But taking a look on how these get hooked up on i386/amd64, it seems there is a reasonable amount of work to do:

  • libpmc_pmu_util.c needs to be ported to PPC64.
  • In hwpmc module, PPC64 allocate/release pmc methods need to be adapted to support PMC allocation with settings coming from libpmc. Also, register programming is a bit different for these events, compared to the basic ones of ISA 2.07.
  • Probably something else I'm missing.

So, it doesn't seem a whole lot of work, but I think it's enough to justify doing it a separate patch later.

luporl retitled this revision from libpmc: add support for PPCPNV PMCs to libpmc: add support for POWER8/9 PMCs.
luporl edited the summary of this revision. (Show Details)

Rename ppcpnv/powernv to power8.

The PowerNV naming could cause confusion, as these changes work with pseries/QEMU too.
POWER8 describes more correctly the support target being added, and POWER9 is fully backwards compatible with it.

This revision is now accepted and ready to land.Nov 3 2020, 10:27 PM
This revision was automatically updated to reflect the committed changes.