diff --git a/headers/mypapi.h b/headers/mypapi.h
index dceff854928c0944c1952953d267f4bbff2a1925..3025ac4566cbe296c79928af90681e1b0aff3bf3 100644
--- a/headers/mypapi.h
+++ b/headers/mypapi.h
@@ -22,9 +22,15 @@
 #if defined(USE_PAPI)                                           // -----------------------------------------------------------
 #include <papi.h>
 
-#define PAPI_EVENTS_NUM 4
+#define PAPI_EVENTS_NUM 8
 const unsigned int native_dp_scalar = (((0xc7 & 0xffffff)<<8) | (0xfc & 0xff));
-int       papi_events[PAPI_EVENTS_NUM] = {PAPI_TOT_INS, PAPI_TOT_CYC, PAPI_L2_DCA, PAPI_L2_DCM};
+//int       papi_events[PAPI_EVENTS_NUM] = {PAPI_TOT_INS, PAPI_TOT_CYC, PAPI_L2_DCA, PAPI_L2_DCM};
+int       papi_events[PAPI_EVENTS_NUM] = {PAPI_SP_OPS, PAPI_DP_OPS, PAPI_VEC_SP, PAPI_VEC_DP};
+char     *papi_eventnames[PAPI_EVENTS_NUM] = {"Instructions", "cycles", "L2D accesses", "L2D misses",
+					      "SC DFP", "SC SFP", "V128 DFP", "V256 DFP"};
+char     *papi_namedevents[PAPI_EVENTS_NUM] = {"PAPI_TOT_INS","PAPI_TOT_CYC","PAPI_L2_DCA", "PAPI_L2_LDM",
+					       "FP_ARITH:SCALAR_DOUBLE", "FP_ARITH:SCALAR_SINGLE",
+					       "FP_ARITH:128B_PACKED_DOUBLE", "FP_ARITH:256B_PACKED_DOUBLE"};
 int       papi_EventSet                = PAPI_NULL;             // the handle for the events' set
 long long papi_buffer[PAPI_EVENTS_NUM] = {0};                   // storage for the counters' values
 long long papi_values[PAPI_EVENTS_NUM] = {0};                   // accumulate the counters' values
@@ -52,6 +58,11 @@ long long papi_values[PAPI_EVENTS_NUM] = {0};                   // accumulate th
       printf("a problem  with PAPI (code %d) : event %d arise at line %d: %s (%d)\n", \
 	     (R), (E),  __LINE__, (S1), (n)); fflush(stdout); }}
 
+#define PAPI_WARN_NAMEDEVENT( R, E, S1, n ) {				\
+    if ( (R) != PAPI_OK ) {						\
+      printf("a problem  with PAPI (code %d) : event %s arise at line %d: %s (%d)\n", \
+	     (R), (E),  __LINE__, (S1), (n)); fflush(stdout); }}
+
 
 #define PAPI_ADD_EVENTS_to_SET { for ( int i = 0; i < PAPI_EVENTS_NUM; i++) { \
       retval = PAPI_query_event(papi_events[i]);			\
@@ -60,12 +71,21 @@ long long papi_values[PAPI_EVENTS_NUM] = {0};                   // accumulate th
 	PAPI_WARN_EVENT(retval, papi_events[i], "adding event", i);} else { \
       PAPI_WARN_EVENT(retval, papi_events[i],"querying event", i)}  } }
 
+#define PAPI_ADD_NAMEDEVENTS_to_SET { for ( int i = 0; i < PAPI_EVENTS_NUM; i++) { \
+      int native = 0;						\
+      retval = PAPI_event_name_to_code(papi_namedevents[i] , &native );	\
+      if ( retval == PAPI_OK ) {					\
+	retval = PAPI_add_event(papi_EventSet, native);			\
+	PAPI_WARN_NAMEDEVENT(retval, papi_namedevents[i], "adding event", i);} else { \
+	PAPI_WARN_NAMEDEVENT(retval, papi_namedevents[i],"querying event", i)}  } }
+
 #define PAPI_INIT {							\
     int retval = PAPI_library_init(PAPI_VER_CURRENT);			\
     if (retval != PAPI_VER_CURRENT)					\
       printf("wrong PAPI initialization: version %d instead of %d has been found\n", retval, PAPI_VER_CURRENT); \
     retval = PAPI_create_eventset(&papi_EventSet); PAPI_WARN(retval,"creating event set"); \
-    PAPI_ADD_EVENTS_to_SET; }
+    PAPI_ADD_NAMEDEVENTS_to_SET; }
+    //PAPI_ADD_EVENTS_to_SET; }
 
 // to use HIGH-LEVEL API
 //#define PAPI_START_CNTR { int res = PAPI_start_counters(papi_events, PAPI_EVENTS_NUM); PAPI_CHECK_RES(res); }