A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
SMPI: Add a global table of processes, which one day will replace the table of hosts
[simgrid.git]
/
src
/
smpi
/
smpi_global.c
diff --git
a/src/smpi/smpi_global.c
b/src/smpi/smpi_global.c
index
f0ad13e
..
870bae3
100644
(file)
--- a/
src/smpi/smpi_global.c
+++ b/
src/smpi/smpi_global.c
@@
-153,7
+153,6
@@
void smpi_global_init()
smpi_global->host_count = 0;
// running hosts
smpi_global->host_count = 0;
// running hosts
- smpi_global->running_hosts_count_mutex = SIMIX_mutex_init();
smpi_global->running_hosts_count = 0;
// mallocators
smpi_global->running_hosts_count = 0;
// mallocators
@@
-166,15
+165,10
@@
void smpi_global_init()
// queues
smpi_global->pending_send_request_queues = xbt_new(xbt_fifo_t, size);
// queues
smpi_global->pending_send_request_queues = xbt_new(xbt_fifo_t, size);
- smpi_global->pending_send_request_queues_mutexes =
- xbt_new(smx_mutex_t, size);
- smpi_global->pending_recv_request_queues = xbt_new(xbt_fifo_t, size);
- smpi_global->pending_recv_request_queues_mutexes =
- xbt_new(smx_mutex_t, size);
smpi_global->received_message_queues = xbt_new(xbt_fifo_t, size);
smpi_global->received_message_queues = xbt_new(xbt_fifo_t, size);
- smpi_global->received_message_queues_mutexes = xbt_new(smx_mutex_t, size);
// sender/receiver processes
// sender/receiver processes
+ smpi_global->main_processes = xbt_new(smx_process_t, size);
smpi_global->sender_processes = xbt_new(smx_process_t, size);
smpi_global->receiver_processes = xbt_new(smx_process_t, size);
smpi_global->sender_processes = xbt_new(smx_process_t, size);
smpi_global->receiver_processes = xbt_new(smx_process_t, size);
@@
-189,11
+183,7
@@
void smpi_global_init()
for (i = 0; i < size; i++) {
smpi_global->pending_send_request_queues[i] = xbt_fifo_new();
for (i = 0; i < size; i++) {
smpi_global->pending_send_request_queues[i] = xbt_fifo_new();
- smpi_global->pending_send_request_queues_mutexes[i] = SIMIX_mutex_init();
- smpi_global->pending_recv_request_queues[i] = xbt_fifo_new();
- smpi_global->pending_recv_request_queues_mutexes[i] = SIMIX_mutex_init();
smpi_global->received_message_queues[i] = xbt_fifo_new();
smpi_global->received_message_queues[i] = xbt_fifo_new();
- smpi_global->received_message_queues_mutexes[i] = SIMIX_mutex_init();
}
smpi_global->hosts = SIMIX_host_get_table();
}
smpi_global->hosts = SIMIX_host_get_table();
@@
-241,12
+231,10
@@
void smpi_global_destroy()
smpi_do_once_duration_node_t curr, next;
// processes
smpi_do_once_duration_node_t curr, next;
// processes
+ xbt_free(smpi_global->main_processes);
xbt_free(smpi_global->sender_processes);
xbt_free(smpi_global->receiver_processes);
xbt_free(smpi_global->sender_processes);
xbt_free(smpi_global->receiver_processes);
- // running hosts
- SIMIX_mutex_destroy(smpi_global->running_hosts_count_mutex);
-
// mallocators
xbt_mallocator_free(smpi_global->request_mallocator);
xbt_mallocator_free(smpi_global->message_mallocator);
// mallocators
xbt_mallocator_free(smpi_global->request_mallocator);
xbt_mallocator_free(smpi_global->message_mallocator);
@@
-265,19
+253,11
@@
void smpi_global_destroy()
for (i = 0; i < size; i++) {
xbt_fifo_free(smpi_global->pending_send_request_queues[i]);
for (i = 0; i < size; i++) {
xbt_fifo_free(smpi_global->pending_send_request_queues[i]);
- SIMIX_mutex_destroy(smpi_global->pending_send_request_queues_mutexes[i]);
- xbt_fifo_free(smpi_global->pending_recv_request_queues[i]);
- SIMIX_mutex_destroy(smpi_global->pending_recv_request_queues_mutexes[i]);
xbt_fifo_free(smpi_global->received_message_queues[i]);
xbt_fifo_free(smpi_global->received_message_queues[i]);
- SIMIX_mutex_destroy(smpi_global->received_message_queues_mutexes[i]);
}
xbt_free(smpi_global->pending_send_request_queues);
}
xbt_free(smpi_global->pending_send_request_queues);
- xbt_free(smpi_global->pending_send_request_queues_mutexes);
- xbt_free(smpi_global->pending_recv_request_queues);
- xbt_free(smpi_global->pending_recv_request_queues_mutexes);
xbt_free(smpi_global->received_message_queues);
xbt_free(smpi_global->received_message_queues);
- xbt_free(smpi_global->received_message_queues_mutexes);
xbt_free(smpi_global);
xbt_free(smpi_global);
@@
-321,8
+301,6
@@
int smpi_run_simulation(int *argc, char **argv)
SIMIX_create_environment(argv[1]);
SIMIX_function_register("smpi_simulated_main", smpi_simulated_main);
SIMIX_create_environment(argv[1]);
SIMIX_function_register("smpi_simulated_main", smpi_simulated_main);
- SIMIX_function_register("smpi_sender", smpi_sender);
- SIMIX_function_register("smpi_receiver", smpi_receiver);
SIMIX_launch_application(argv[2]);
// must initialize globals between creating environment and launching app....
SIMIX_launch_application(argv[2]);
// must initialize globals between creating environment and launching app....