Page MenuHomeFreeBSD

hwpmc: snapshot grouped counter values and run time
Needs ReviewPublic

Authored by afscoelho_gmail.com on Thu, Sep 3, 9:32 PM.
Tags
None
Referenced Files
F173480861: D59360.diff
Sat, Sep 26, 6:22 AM
Unknown Object (File)
Wed, Sep 16, 9:56 PM
Unknown Object (File)
Wed, Sep 16, 5:38 AM
Unknown Object (File)
Wed, Sep 16, 12:43 AM
Unknown Object (File)
Sun, Sep 13, 7:34 AM
Unknown Object (File)
Sun, Sep 13, 2:18 AM
Unknown Object (File)
Sat, Sep 12, 8:21 PM
Unknown Object (File)
Sat, Sep 12, 1:06 PM
Subscribers

Details

Summary

Add PMCGROUPREAD, which returns the counts of every member of a group
and the run time of the group in one call.

A caller that reads the members one at a time with PMCRW gets values
from different intervals, and cannot tell how long the group actually
ran. That makes the counts of a multiplexed group meaningless: the
reader cannot scale them.

PMCGROUPREAD takes the values of all members at one point. It stops the
members on the CPUs that hold them, reads them, and reports the enabled
time and the running time of the group with the counts. A reader scales
a multiplexed count by the ratio of the two.

A caller that passes a zero member capacity gets the member count and
the times, and can then size its buffer.

Sponsored by: AMD

Signed-off-by: Andre Silva <andasilv@amd.com>

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 76454
Build 73337: arc lint + arc unit