- sprintf (mailbox_name,"%s_%s", xbt_dynar_get_as(action, 2, char *),
- MSG_process_get_name(MSG_process_self()));
- name = bprintf("%s_wait",MSG_process_get_name(MSG_process_self()));
- myargv = (char**) calloc (2, sizeof (char*));
-
+ DEBUG1("Irecv on %s: spawn process ",
+ MSG_process_get_name(MSG_process_self()));
+#ifdef HAVE_TRACING
+ int rank = get_rank(MSG_process_get_name(MSG_process_self()));
+ int src_traced = get_rank(xbt_dynar_get_as(action, 2, char *));
+ coll_ctr counters = (coll_ctr) MSG_process_get_data(MSG_process_self());
+ if (!counters) {
+ DEBUG0("Initialize the counters");
+ counters = (coll_ctr) calloc(1, sizeof(struct coll_ctr_t));
+ }
+ counters->last_Irecv_sender_id = src_traced;
+ MSG_process_set_data(MSG_process_self(), (void *) counters);
+
+ TRACE_smpi_ptp_in(rank, src_traced, rank, "Irecv");
+#endif
+
+ sprintf(mailbox_name, "%s_%s", xbt_dynar_get_as(action, 2, char *),
+ MSG_process_get_name(MSG_process_self()));
+ name = bprintf("%s_wait", MSG_process_get_name(MSG_process_self()));
+ myargv = (char **) calloc(2, sizeof(char *));
+