Explorar o código

force MPI and pioman threads to share the same core in nmad interface

Adrien Guilbaud %!s(int64=6) %!d(string=hai) anos
pai
achega
fdfdb9e07b
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      mpi/src/nmad/starpu_mpi_nmad.c

+ 4 - 0
mpi/src/nmad/starpu_mpi_nmad.c

@@ -651,6 +651,10 @@ int _starpu_mpi_progress_init(struct _starpu_mpi_argc_argv *argc_argv)
 	int indexes[1] = {piom_bindid};
 	piom_ltask_set_bound_thread_indexes(HWLOC_OBJ_CORE,indexes,1);
 
+	/* We force the "MPI" thread to share the same core as the pioman thread
+	   to avoid binding it on the same core as a worker */
+	_starpu_mpi_thread_cpuid = piom_bindid;
+
 	/* Register some hooks for communication progress if needed */
 	int polling_point_prog, polling_point_idle;
 	char *s_prog_hooks = starpu_getenv("STARPU_MPI_NMAD_PROG_HOOKS");