recvd scat 101 for proc=1 at 0.541143 sec recvd gath 0 0 for proc=1 at 0.54123 sec recvd scat 102 for proc=2 at 0.298952 sec recvd gath 0 0 for proc=2 at 0.299187 sec recvd scat 103 for proc=3 at 0.039549 sec recvd gath 0 0 for proc=3 at 0.039619 sec scat.c 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 printf output. recvd scat 100 for proc=0 at 0.783264 sec recvd gath 100 111 for proc=0 at 0.784865 sec master gath vector gath[0]=100 gath[1]=111 gath[2]=122 gath[3]=133