if (src < comm_size) {
recv_offset = (phase - 1) * pcount * extent;
smpi_mpi_recv(tmp_buf, pcount, dtype, src, tag, comm, &status);
if (src < comm_size) {
recv_offset = (phase - 1) * pcount * extent;
smpi_mpi_recv(tmp_buf, pcount, dtype, src, tag, comm, &status);