Once the parallel application finishes its communication, it calls a finalize() routine of message passing layer. This helps the message passing layer to free the resources allocated during the communication channel establishment. TCPMPL closes all the communication channels to all its peers. This call to close triggers the TCP layer to close the connection using a three-way handshake. The initiator waits for all its peers to finish and then exits.