diff options
author | fabient <fabient@FreeBSD.org> | 2010-04-02 13:23:49 +0000 |
---|---|---|
committer | fabient <fabient@FreeBSD.org> | 2010-04-02 13:23:49 +0000 |
commit | 85d5b2855f1b8db1aa9a2dd7945b711399a111b7 (patch) | |
tree | 74703b81e372faa288cd54560b3715fd2bc1e0ce /sys/i386/include/pmc_mdep.h | |
parent | 0e3cec01fc03abe666c04e3bfb10c74c603bc896 (diff) | |
download | FreeBSD-src-85d5b2855f1b8db1aa9a2dd7945b711399a111b7.zip FreeBSD-src-85d5b2855f1b8db1aa9a2dd7945b711399a111b7.tar.gz |
- Support for uncore counting events: one fixed PMC with the uncore
domain clock, 8 programmable PMC.
- Westmere based CPU (Xeon 5600, Corei7 980X) support.
- New man pages with events list for core and uncore.
- Updated Corei7 events with Intel 253669-033US December 2009 doc.
There is some removed events in the documentation, they have been
kept in the code but documented in the man page as obsolete.
- Offcore response events can be setup with rsp token.
Sponsored by: NETASQ
Diffstat (limited to 'sys/i386/include/pmc_mdep.h')
-rw-r--r-- | sys/i386/include/pmc_mdep.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/i386/include/pmc_mdep.h b/sys/i386/include/pmc_mdep.h index 4389a20..9209a2b 100644 --- a/sys/i386/include/pmc_mdep.h +++ b/sys/i386/include/pmc_mdep.h @@ -49,6 +49,8 @@ struct pmc_mdep; * PENTIUM Intel Pentium MMX. * IAP Intel Core/Core2/Atom programmable PMCs. * IAF Intel fixed-function PMCs. + * UCP Intel Uncore programmable PMCs. + * UCF Intel Uncore fixed-function PMCs. */ #include <dev/hwpmc/hwpmc_amd.h> /* K7 and K8 */ @@ -57,11 +59,12 @@ struct pmc_mdep; #include <dev/hwpmc/hwpmc_ppro.h> #include <dev/hwpmc/hwpmc_pentium.h> #include <dev/hwpmc/hwpmc_tsc.h> +#include <dev/hwpmc/hwpmc_uncore.h> /* * Intel processors implementing V2 and later of the Intel performance * measurement architecture have PMCs of the following classes: TSC, - * IAF and IAP. + * IAF, IAP, UCF and UCP. */ #define PMC_MDEP_CLASS_INDEX_TSC 0 #define PMC_MDEP_CLASS_INDEX_K7 1 @@ -71,6 +74,8 @@ struct pmc_mdep; #define PMC_MDEP_CLASS_INDEX_P6 1 #define PMC_MDEP_CLASS_INDEX_IAP 1 #define PMC_MDEP_CLASS_INDEX_IAF 2 +#define PMC_MDEP_CLASS_INDEX_UCP 3 +#define PMC_MDEP_CLASS_INDEX_UCF 4 /* * Architecture specific extensions to <sys/pmc.h> structures. @@ -80,6 +85,8 @@ union pmc_md_op_pmcallocate { struct pmc_md_amd_op_pmcallocate pm_amd; struct pmc_md_iaf_op_pmcallocate pm_iaf; struct pmc_md_iap_op_pmcallocate pm_iap; + struct pmc_md_ucf_op_pmcallocate pm_ucf; + struct pmc_md_ucp_op_pmcallocate pm_ucp; struct pmc_md_p4_op_pmcallocate pm_p4; struct pmc_md_pentium_op_pmcallocate pm_pentium; struct pmc_md_ppro_op_pmcallocate pm_ppro; @@ -97,6 +104,8 @@ union pmc_md_pmc { struct pmc_md_amd_pmc pm_amd; struct pmc_md_iaf_pmc pm_iaf; struct pmc_md_iap_pmc pm_iap; + struct pmc_md_ucf_pmc pm_ucf; + struct pmc_md_ucp_pmc pm_ucp; struct pmc_md_p4_pmc pm_p4; struct pmc_md_pentium_pmc pm_pentium; struct pmc_md_ppro_pmc pm_ppro; |