37 if ( strlen( info->
derived ) == 0 )
39 else if ( strcmp( info->
derived,
"NOT_DERIVED" ) == 0 )
41 else if ( strcmp( info->
derived,
"DERIVED_CMPD" ) == 0 )
56 printf(
"Error removing event.\n" );
70 printf(
"%s\t%#x\n |%s|\n",
73 for( k = 0; k < (
int ) info.
count; k++ ) {
74 if ( strlen( info.
name[k] ) ) {
75 printf(
" |Register Value[%d]: %#-10x %s|\n",
98 printf(
"Cannot find first event in component %d\n",
cidx);
111 strchr( info.
symbol,
':' ),
133 printf(
"Groups: " );
142 printf(
"---------------------------------------------"
143 "----------------------------\n" );
147 printf(
"------------------------------------------"
148 "-------------------------------\n" );
149 printf(
"Total events reported: %d\n", j );
161 printf(
" Name Code " );
162 printf(
"Deriv Description (Note)\n" );
172 printf(
"%-13s%#x %-5s%s",
176 printf(
" (%s)", info.
note );
180 printf(
"Error in PAPI_remove_event\n" );
186 (
"-------------------------------------------------------------------------\n" );
187 printf(
"Total events reported: %d\n", j );
208 fprintf(
stderr,
"Error! PAPI_library_init\n");
214 fprintf(
stderr,
"Error! PAPI_set_debug\n");
219 "which can be added with given events.\n",
222 fprintf(
stderr,
"Error! PAPI_get_hardware_info\n");
228 fprintf(
stderr,
"PAPI_create_eventset error\n" );
234 fprintf(
stderr,
"Event %s can't be found\n", argv[2] );
239 for(
i = 2;
i < argc;
i++ ) {
242 fprintf(
stderr,
"Event %s can't be found\n", argv[
i] );
247 fprintf(
stderr,
"Event %s can't be counted with others %d\n",
253 if ( !strcmp(
"NATIVE", argv[1] ) ) {
256 else if ( !strcmp(
"PRESET", argv[1] ) ) {
266 "Usage: papi_event_chooser NATIVE|PRESET evt1 evt2 ... \n" );
add PAPI preset or native hardware event to an event set
Create a new empty PAPI EventSet.
Enumerate PAPI preset or native events for a given component.
Enumerate PAPI preset or native events.
Convert a name to a numeric hardware event code.
return component an event belongs to
Get the event's name and description info.
initialize the PAPI library.
removes a hardware event from a PAPI event set.
Set the current debug level for error output from PAPI.
#define PAPI_NTV_GROUP_AND_MASK
#define PAPI_NTV_ENUM_UMASKS
#define PAPI_NTV_GROUP_SHIFT
Return codes and api definitions.
static int add_remove_event(int EventSet, int evt)
static int show_event_info(int evt)
static char * is_derived(PAPI_event_info_t *info)
char name[PAPI_MAX_INFO_TERMS][PAPI_2MAX_STR_LEN]
char note[PAPI_HUGE_STR_LEN]
char symbol[PAPI_HUGE_STR_LEN]
char derived[PAPI_MIN_STR_LEN]
unsigned int code[PAPI_MAX_INFO_TERMS]
char long_descr[PAPI_HUGE_STR_LEN]