scat.F numprocs= 4 Scatter is blocking and must be executed by all. Scatter automatically indexes through bufout. all, including master, receive from scatter. Gather is blocking and must be executed by all. Gather automatically indexes through gath. only master receives from Gather. no order guaranteed for print output. recvd scat 101 for proc= 0 at 0.607665000000144229 sec recvd scat 102 for proc= 1 at 0.405950000000144195 sec recvd scat 103 for proc= 2 at 0.211088000000144216 sec recvd gath 101 , 112 for proc= 0 at 0.609946000000144206 sec master gath vector gath( 1 )= 101 gath( 2 )= 112 gath( 3 )= 123 gath( 4 )= 134 recvd scat 104 for proc= 3 at 0.647100000014422423E-02 sec recvd gath 0 , 0 for proc= 3 at 0.784800000014422398E-02 sec recvd gath 0 , 0 for proc= 1 at 0.407202000000144226 sec recvd gath 0 , 0 for proc= 2 at 0.212591000000144220 sec