예제 #1
0
	11,/* Pentium III Tualatin */
	0
};

static const int pm_models[] = {
	9, /* Pentium M */
	13, /* Pentium III Coppermine */
	0
};

/* Pentium II support */
pfmlib_pmu_t intel_pii_support={
	.desc			= "Intel Pentium II",
	.name			= "pii",
	.pmu			= PFM_PMU_INTEL_PII,
	.pme_count		= LIBPFM_ARRAY_SIZE(intel_pii_pe),
	.pe			= intel_pii_pe,
	.atdesc			= intel_x86_mods,
	.flags			= PFMLIB_PMU_FL_RAW_UMASK,
	.type			= PFM_PMU_TYPE_CORE,
	.supported_plm		= INTEL_X86_PLM,
	.cpu_family		= 6,
	.cpu_models		= pii_models,
	.pmu_detect		= pfm_intel_x86_model_detect,
	.num_cntrs		= 2,
	.max_encoding		= 1,

	.get_event_encoding[PFM_OS_NONE] = pfm_intel_x86_get_encoding,
	 PFMLIB_ENCODE_PERF(pfm_intel_x86_get_perf_encoding),

	.get_event_first	= pfm_intel_x86_get_event_first,
예제 #2
0
 */
/* private headers */
#include "pfmlib_priv.h"			/* library private */
#include "pfmlib_intel_x86_priv.h"		/* architecture private */
#include "events/intel_knc_events.h"

static const int knc_models[] = {
	1, /* Knights Corner */
	0
};

pfmlib_pmu_t intel_knc_support={
	.desc			= "Intel Knights Corner",
	.name			= "knc",
	.pmu			= PFM_PMU_INTEL_KNC,
	.pme_count		= LIBPFM_ARRAY_SIZE(intel_knc_pe),
	.type			= PFM_PMU_TYPE_CORE,
	.num_cntrs		= 2,
	.max_encoding		= 1,
	.pe			= intel_knc_pe,
	.atdesc			= intel_x86_mods,
	.supported_plm		= INTEL_X86_PLM,

	.cpu_family		= 11,
	.cpu_models		= knc_models,
	.pmu_detect		= pfm_intel_x86_model_detect,

	.get_event_encoding[PFM_OS_NONE] = pfm_intel_x86_get_encoding,
	 PFMLIB_ENCODE_PERF(pfm_intel_x86_get_perf_encoding),

	.get_event_first	= pfm_intel_x86_get_event_first,
예제 #3
0
 *
 * Core PMU = architectural perfmon v2 + PEBS
 */

/* private headers */
#include "pfmlib_priv.h"
#include "pfmlib_sparc_priv.h"
#include "events/sparc_ultra3_events.h"
#include "events/sparc_ultra3i_events.h"
#include "events/sparc_ultra3plus_events.h"

pfmlib_pmu_t sparc_ultra3_support={
	.desc			= "Ultra Sparc III",
	.name			= "ultra3",
	.pmu			= PFM_PMU_SPARC_ULTRA3, 
	.pme_count		= LIBPFM_ARRAY_SIZE(ultra3_pe),
	.type			= PFM_PMU_TYPE_CORE,
	.supported_plm		= SPARC_PLM,
	.max_encoding		= 2,
	.num_cntrs		= 2,
	.pe			= ultra3_pe,
	.atdesc			= NULL,
	.flags			= 0,

	.pmu_detect		= pfm_sparc_detect,
	.get_event_encoding[PFM_OS_NONE] = pfm_sparc_get_encoding,
	 PFMLIB_ENCODE_PERF(pfm_sparc_get_perf_encoding),
	.get_event_first	= pfm_sparc_get_event_first,
	.get_event_next		= pfm_sparc_get_event_next,
	.event_is_valid		= pfm_sparc_event_is_valid,
	.validate_table		= pfm_sparc_validate_table,
#include <string.h>
#include <stdlib.h>
#include <stdio.h>

/* private headers */
#include "pfmlib_priv.h"
#include "pfmlib_intel_x86_priv.h"
#include "pfmlib_intel_snbep_unc_priv.h"
#include "events/intel_snbep_unc_ha_events.h"

pfmlib_pmu_t intel_snbep_unc_ha_support = {
	.desc			= "Intel Sandy Bridge-EP HA uncore",
	.name			= "snbep_unc_ha",
	.perf_name		= "uncore_ha",
	.pmu			= PFM_PMU_INTEL_SNBEP_UNC_HA,
	.pme_count		= LIBPFM_ARRAY_SIZE(intel_snbep_unc_h_pe),
	.type			= PFM_PMU_TYPE_UNCORE,
	.num_cntrs		= 4,
	.num_fixed_cntrs	= 0,
	.max_encoding		= 3, /* address matchers */
	.pe			= intel_snbep_unc_h_pe,
	.atdesc			= snbep_unc_mods,
	.flags			= PFMLIB_PMU_FL_RAW_UMASK,
	.pmu_detect		= pfm_intel_snbep_unc_detect,
	.get_event_encoding[PFM_OS_NONE] = pfm_intel_snbep_unc_get_encoding,
	 PFMLIB_ENCODE_PERF(pfm_intel_snbep_unc_get_perf_encoding),
	.get_event_first	= pfm_intel_x86_get_event_first,
	.get_event_next		= pfm_intel_x86_get_event_next,
	.event_is_valid		= pfm_intel_x86_event_is_valid,
	.validate_table		= pfm_intel_x86_validate_table,
	.get_event_info		= pfm_intel_x86_get_event_info,