Put the communicator outside of the main loop to avoid overhead