Sfoglia il codice sorgente

Fix build of memory nodes matrix and only MPI drivers can make MPI communications

Corentin Salingue 8 anni fa
parent
commit
94740b1966
2 ha cambiato i file con 3 aggiunte e 3 eliminazioni
  1. 2 2
      src/core/topology.c
  2. 1 1
      src/datawizard/coherency.c

+ 2 - 2
src/core/topology.c

@@ -1677,6 +1677,7 @@ _starpu_init_workers_binding (struct _starpu_machine_config *config, int no_mp_c
 
                 _starpu_worker_drives_memory_node(workerarg->workerid, STARPU_MAIN_RAM);
                 _starpu_worker_drives_memory_node(workerarg->workerid, memory_node);
+
 #ifdef STARPU_SIMGRID
 				starpu_pthread_queue_register(&workerarg->wait, &_starpu_simgrid_transfer_queue[memory_node]);
 				if (memory_node != STARPU_MAIN_RAM)
@@ -1874,10 +1875,9 @@ _starpu_init_workers_binding (struct _starpu_machine_config *config, int no_mp_c
                     if (findworkerarg->arch == STARPU_MPI_WORKER)
                     {
                         _starpu_worker_drives_memory_node(workerarg->workerid, findworkerarg->memory_node);
-                        _starpu_worker_drives_memory_node(findworkerarg->workerid, workerarg->memory_node);
+                        _starpu_worker_drives_memory_node(findworkerarg->workerid, memory_node);
                     }
                 }
-              
 #endif
                 
 				workerarg->bindid = mpi_bindid[devid];

+ 1 - 1
src/datawizard/coherency.c

@@ -266,7 +266,7 @@ static int worker_supports_direct_access(unsigned node, unsigned handling_node)
 			return 0;
         case STARPU_MPI_MS_RAM:
             /* Don't support MPI-MPI transfers yet */
-            return starpu_node_get_kind(handling_node) != STARPU_MPI_MS_RAM;
+            return 0;
 		case STARPU_SCC_RAM:
 			return 1;
 		default: