Преглед на файлове

Add missing _starpu_mic_nodes[mic_idx]->baseworkerid initialization, and along the way fix symbol exposition

Samuel Thibault преди 7 години
родител
ревизия
e30ee529d8
променени са 5 файла, в които са добавени 23 реда и са изтрити 22 реда
  1. 10 9
      src/core/topology.c
  2. 5 5
      src/drivers/mic/driver_mic_source.c
  3. 1 1
      src/drivers/mic/driver_mic_source.h
  4. 6 6
      src/drivers/mpi/driver_mpi_source.c
  5. 1 1
      src/drivers/mpi/driver_mpi_source.h

+ 10 - 9
src/core/topology.c

@@ -533,7 +533,7 @@ _starpu_init_mpi_topology (struct _starpu_machine_config *config, long mpi_idx)
 	struct _starpu_machine_topology *topology = &config->topology;
 
 	int nbcores;
-	_starpu_src_common_sink_nbcores (mpi_ms_nodes[mpi_idx], &nbcores);
+	_starpu_src_common_sink_nbcores (_starpu_mpi_ms_nodes[mpi_idx], &nbcores);
 	topology->nhwmpicores[mpi_idx] = nbcores;
 }
 
@@ -551,7 +551,7 @@ _starpu_init_mic_topology (struct _starpu_machine_config *config, long mic_idx)
 	struct _starpu_machine_topology *topology = &config->topology;
 
 	int nbcores;
-	_starpu_src_common_sink_nbcores (mic_nodes[mic_idx], &nbcores);
+	_starpu_src_common_sink_nbcores (_starpu_mic_nodes[mic_idx], &nbcores);
 	topology->nhwmiccores[mic_idx] = nbcores;
 }
 
@@ -618,7 +618,7 @@ _starpu_init_mic_node (struct _starpu_machine_config *config, int mic_idx,
 
 	/* Let's create the node structure, we'll communicate with the peer
 	 * through scif thanks to it */
-	mic_nodes[mic_idx] =
+	_starpu_mic_nodes[mic_idx] =
 		_starpu_mp_common_node_create(STARPU_NODE_MIC_SOURCE, mic_idx);
 
 	return 0;
@@ -1092,6 +1092,7 @@ _starpu_init_mic_config (struct _starpu_machine_config *config,
 		config->workers[worker_idx].worker_mask = STARPU_MIC;
 		config->worker_mask |= STARPU_MIC;
 	}
+	_starpu_mic_nodes[mic_idx]->baseworkerid = topology->nworkers;
 
 	topology->nworkers += topology->nmiccores[mic_idx];
 }
@@ -1155,7 +1156,7 @@ _starpu_init_mpi_config (struct _starpu_machine_config *config,
                 config->workers[worker_idx].worker_mask = STARPU_MPI_MS;
                 config->worker_mask |= STARPU_MPI_MS;
         }
-	mpi_ms_nodes[mpi_idx]->baseworkerid = topology->nworkers;
+	_starpu_mpi_ms_nodes[mpi_idx]->baseworkerid = topology->nworkers;
 
         topology->nworkers += topology->nmpicores[mpi_idx];
 }
@@ -1250,7 +1251,7 @@ _starpu_init_mp_config (struct _starpu_machine_config *config,
 		{
 			unsigned i;
 			for (i = 0; i < topology->nmpidevices; i++)
-				mpi_ms_nodes[i] = _starpu_mp_common_node_create(STARPU_NODE_MPI_SOURCE, i);
+				_starpu_mpi_ms_nodes[i] = _starpu_mp_common_node_create(STARPU_NODE_MPI_SOURCE, i);
 
 			for (i = 0; i < topology->nmpidevices; i++)
 				_starpu_init_mpi_config (config, user_conf, i);
@@ -1264,20 +1265,20 @@ _starpu_init_mp_config (struct _starpu_machine_config *config,
 static void
 _starpu_deinit_mic_node (unsigned mic_idx)
 {
-	_starpu_mp_common_send_command(mic_nodes[mic_idx], STARPU_MP_COMMAND_EXIT, NULL, 0);
+	_starpu_mp_common_send_command(_starpu_mic_nodes[mic_idx], STARPU_MP_COMMAND_EXIT, NULL, 0);
 
 	COIProcessDestroy(_starpu_mic_process[mic_idx], -1, 0, NULL, NULL);
 
-	_starpu_mp_common_node_destroy(mic_nodes[mic_idx]);
+	_starpu_mp_common_node_destroy(_starpu_mic_nodes[mic_idx]);
 }
 #endif
 
 #ifdef STARPU_USE_MPI_MASTER_SLAVE
 static void _starpu_deinit_mpi_node(int devid)
 {
-        _starpu_mp_common_send_command(mpi_ms_nodes[devid], STARPU_MP_COMMAND_EXIT, NULL, 0);
+        _starpu_mp_common_send_command(_starpu_mpi_ms_nodes[devid], STARPU_MP_COMMAND_EXIT, NULL, 0);
 
-        _starpu_mp_common_node_destroy(mpi_ms_nodes[devid]);
+        _starpu_mp_common_node_destroy(_starpu_mpi_ms_nodes[devid]);
 }
 #endif
 

+ 5 - 5
src/drivers/mic/driver_mic_source.c

@@ -34,7 +34,7 @@
 
 /* Array of structures containing all the informations useful to send
  * and receive informations with devices */
-struct _starpu_mp_node *mic_nodes[STARPU_MAXMICDEVS];
+struct _starpu_mp_node *_starpu_mic_nodes[STARPU_MAXMICDEVS];
 
 static COIENGINE handles[STARPU_MAXMICDEVS];
 
@@ -82,7 +82,7 @@ struct _starpu_mp_node *_starpu_mic_src_get_actual_thread_mp_node()
 	int devid = actual_worker->devid;
 	STARPU_ASSERT(devid >= 0 && devid < STARPU_MAXMICDEVS);
 
-	return mic_nodes[devid];
+	return _starpu_mic_nodes[devid];
 }
 
 struct _starpu_mp_node *_starpu_mic_src_get_mp_node_from_memory_node(int memory_node)
@@ -90,7 +90,7 @@ struct _starpu_mp_node *_starpu_mic_src_get_mp_node_from_memory_node(int memory_
 	int devid = _starpu_memory_node_get_devid(memory_node);
 	STARPU_ASSERT_MSG(devid >= 0 && devid < STARPU_MAXMICDEVS, "bogus devid %d for memory node %d\n", devid, memory_node);
 
-	return mic_nodes[devid];
+	return _starpu_mic_nodes[devid];
 }
 
 static void _starpu_mic_src_free_kernel(void *kernel)
@@ -175,7 +175,7 @@ starpu_mic_kernel_t _starpu_mic_src_get_kernel(starpu_mic_func_symbol_t symbol)
 
 	if (kernel->func[devid] == NULL)
 	{
-		struct _starpu_mp_node *node = mic_nodes[devid];
+		struct _starpu_mp_node *node = _starpu_mic_nodes[devid];
 		int ret = _starpu_src_common_lookup(node, (void (**)(void))&kernel->func[devid], kernel->name);
 		if (ret)
 			return NULL;
@@ -554,7 +554,7 @@ void *_starpu_mic_src_worker(void *arg)
 	STARPU_PTHREAD_COND_SIGNAL(&worker_set->ready_cond);
 	STARPU_PTHREAD_MUTEX_UNLOCK(&worker_set->mutex);
 
-	_starpu_src_common_worker(worker_set, baseworkerid, mic_nodes[devid]);
+	_starpu_src_common_worker(worker_set, baseworkerid, _starpu_mic_nodes[devid]);
 
 	return NULL;
 

+ 1 - 1
src/drivers/mic/driver_mic_source.h

@@ -30,7 +30,7 @@
 
 /* Array of structures containing all the informations useful to send
  * and receive informations with devices */
-extern struct _starpu_mp_node *mic_nodes[STARPU_MAXMICDEVS];
+extern struct _starpu_mp_node *_starpu_mic_nodes[STARPU_MAXMICDEVS];
 
 struct _starpu_mic_async_event *event;
 

+ 6 - 6
src/drivers/mpi/driver_mpi_source.c

@@ -47,7 +47,7 @@ struct _starpu_mpi_ms_kernel
 
 /* Array of structures containing all the informations useful to send
  * and receive informations with devices */
-struct _starpu_mp_node *mpi_ms_nodes[STARPU_MAXMPIDEVS];
+struct _starpu_mp_node *_starpu_mpi_ms_nodes[STARPU_MAXMPIDEVS];
 
 struct _starpu_mp_node *_starpu_mpi_ms_src_get_actual_thread_mp_node()
 {
@@ -57,7 +57,7 @@ struct _starpu_mp_node *_starpu_mpi_ms_src_get_actual_thread_mp_node()
 	int devid = actual_worker->devid;
 	STARPU_ASSERT(devid >= 0 && devid < STARPU_MAXMPIDEVS);
 
-	return mpi_ms_nodes[devid];
+	return _starpu_mpi_ms_nodes[devid];
 }
 
 void _starpu_mpi_source_init(struct _starpu_mp_node *node)
@@ -76,7 +76,7 @@ struct _starpu_mp_node *_starpu_mpi_src_get_mp_node_from_memory_node(int memory_
         int devid = _starpu_memory_node_get_devid(memory_node);
         STARPU_ASSERT_MSG(devid >= 0 && devid < STARPU_MAXMPIDEVS, "bogus devid %d for memory node %d\n", devid, memory_node);
 
-        return mpi_ms_nodes[devid];
+        return _starpu_mpi_ms_nodes[devid];
 }
 
 int _starpu_mpi_src_allocate_memory(void ** addr, size_t size, unsigned memory_node)
@@ -200,7 +200,7 @@ starpu_mpi_ms_kernel_t starpu_mpi_ms_get_kernel(starpu_mpi_ms_func_symbol_t symb
 
         if (kernel->func[devid] == NULL)
         {
-                struct _starpu_mp_node *node = mpi_ms_nodes[devid];
+                struct _starpu_mp_node *node = _starpu_mpi_ms_nodes[devid];
                 int ret = _starpu_src_common_lookup(node, (void (**)(void))&kernel->func[devid], kernel->name);
                 if (ret)
                         return NULL;
@@ -376,9 +376,9 @@ void *_starpu_mpi_src_worker(void *arg)
 
 
 #ifndef STARPU_MPI_MASTER_SLAVE_MULTIPLE_THREAD
-        _starpu_src_common_workers_set(worker_set_mpi, nbsinknodes, mpi_ms_nodes);
+        _starpu_src_common_workers_set(worker_set_mpi, nbsinknodes, _starpu_mpi_ms_nodes);
 #else
-        _starpu_src_common_worker(worker_set, baseworkerid, mpi_ms_nodes[devid]);
+        _starpu_src_common_worker(worker_set, baseworkerid, _starpu_mpi_ms_nodes[devid]);
 #endif
 
         return NULL;

+ 1 - 1
src/drivers/mpi/driver_mpi_source.h

@@ -25,7 +25,7 @@
 
 /* Array of structures containing all the informations useful to send
  * and receive informations with devices */
-extern struct _starpu_mp_node *mpi_ms_nodes[STARPU_MAXMPIDEVS];
+extern struct _starpu_mp_node *_starpu_mpi_ms_nodes[STARPU_MAXMPIDEVS];
 struct _starpu_mp_node *_starpu_mpi_src_get_mp_node_from_memory_node(int memory_node);
 struct _starpu_mp_node *_starpu_mpi_ms_src_get_actual_thread_mp_node();