From 4f8c687f44a75762dab93032a906954a0bb34f91 Mon Sep 17 00:00:00 2001 From: Brandon Rodriguez <brodriguez8774@gmail.com> Date: Mon, 15 Feb 2021 23:27:39 -0500 Subject: [PATCH] Slightly improve responsiveness of output display --- src/load_balance_general.c | 1 + src/load_balance_schemes.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/load_balance_general.c b/src/load_balance_general.c index eb9b300..e056d6d 100644 --- a/src/load_balance_general.c +++ b/src/load_balance_general.c @@ -243,6 +243,7 @@ void worker_handle_request(thread_struct* thread_args_ptr) { // Load has been split. Immediately attempt to update main processor of change. worker_send_status(thread_args_ptr->thread_num, thread_args_ptr->remaining_loads); + worker_send_status(index, work_send_value); } else { // Worker has exactly 0 or 1 loads. Not enough to send. Reject request instead. work_send_value = -1; diff --git a/src/load_balance_schemes.c b/src/load_balance_schemes.c index 68b0072..ee51fc8 100644 --- a/src/load_balance_schemes.c +++ b/src/load_balance_schemes.c @@ -82,7 +82,7 @@ void arr_main(thread_struct* thread_args_ptr) { // Check if message present from respective process. MPI_Iprobe(index, tag_status_update, MPI_COMM_WORLD, &msg_status_flag, MPI_STATUS_IGNORE); - if (msg_status_flag == 1) { + while (msg_status_flag == 1) { msg_recieved = 1; // Message present. Retrieve and handle. @@ -90,6 +90,8 @@ void arr_main(thread_struct* thread_args_ptr) { MPI_Recv(recv_array, 2, MPI_INT, index, tag_status_update, MPI_COMM_WORLD, MPI_STATUS_IGNORE); main_display_status(thread_args_ptr, recv_array[0], recv_array[1], init_run); free(recv_array); + + MPI_Iprobe(index, tag_status_update, MPI_COMM_WORLD, &msg_status_flag, MPI_STATUS_IGNORE); } // Increment for next thread. -- GitLab