31{
38
39
41
42
43 MPI_Init( argc, argv );
44
48
49
53 } else {
56 }
57
61 sprintf( add_event_str,
"PAPI_add_event[%s]",
event_name );
62
64
66
70
72
76
80
82
86
88
92
94
98
102
104
106 printf( "Test case 1: Non-overlapping start, stop, read.\n" );
107 printf( "-----------------------------------------------\n" );
109 printf(
"Default domain is: %d (%s)\n",
tmp,
112 printf(
"Default granularity is: %d (%s)\n",
tmp,
114 printf(
"Using %d iterations of c += a*b\n",
NUM_FLOPS );
115 printf
116 ( "-------------------------------------------------------------------------\n" );
117
118 printf( "Test type : \t1\t\t2\t\t3\t\t4\t\t5\n" );
119 sprintf( add_event_str,
"%s : ",
event_name );
120 printf(
TAB5, add_event_str,
125 printf
126 ( "-------------------------------------------------------------------------\n" );
127
128 printf( "Verification:\n" );
129 printf( "Column 1 approximately equals column 2\n" );
130 printf( "Column 3 approximately equals 2 * column 2\n" );
131 printf( "Column 4 approximately equals 3 * column 2\n" );
132 printf( "Column 4 exactly equals column 5\n" );
133 }
134
135 {
139
141 values[2][0] > ( 2 * max )
145 printf( "min: " );
147 printf( "max: " );
149 printf( "1st: " );
151 printf( "2nd: " );
153 printf( "3rd: " );
155 printf( "4th: " );
157 printf( "5th: " );
159 printf( "\n" );
161 }
162
166 values[2][1] > ( 2 * max )
170 test_fail( __FILE__, __LINE__,
"PAPI_TOT_CYC", 1 );
171 }
172 }
174
175 MPI_Finalize( );
176 exit( 1 );
177}
Convert a numeric hardware event code to a name.
Get PAPI library or event set options.
initialize the PAPI library.
Query if PAPI event exists.
Read hardware counters from an event set.
Reset the hardware event counts in an event set.
Start counting hardware events in an event set.
Stop counting hardware events in an event set.
char event_name[2][PAPI_MAX_STR_LEN]
static long long values[NUM_EVENTS]
int tests_quiet(int argc, char **argv)
int add_test_events(int *number, int *mask, int allow_derived)
char * stringify_all_domains(int domains)
char * stringify_granularity(int granularity)
void PAPI_NORETURN test_fail(const char *file, int line, const char *call, int retval)
long long ** allocate_test_space(int num_tests, int num_events)
void PAPI_NORETURN test_pass(const char *filename)
int remove_test_events(int *EventSet, int mask)