Случайное число для каждого процесса в MPI

Я использую MPICH2 для реализации сортировки "нечетный-четный". Я сделал реализацию, но когда я рандомизирую каждому процессу его значение, то же число рандомизируется для всех процессов.

Вот код для каждого процесса, каждый процесс рандомизировал его значение.

int main(int argc,char *argv[])
{
    int  nameLen, numProcs, myID;
    char processorName[MPI_MAX_PROCESSOR_NAME];
    int myValue;

    MPI_Init(&argc,&argv);
    MPI_Comm_rank(MPI_COMM_WORLD,&myID);
    MPI_Comm_size(MPI_COMM_WORLD,&numProcs);    
    MPI_Get_processor_name(processorName,&nameLen);
    MPI_Status status;

    srand((unsigned)time(NULL));
    myValue = rand()%30+1; 

    cout << "myID: " << myID << " value: " << myValue<<endl;
    MPI_Finalize();

    return 0;
 }

почему каждый процесс получает одинаковое значение?

Редактировать: спасибо за ответы :)

Я изменил линию

 srand((unsigned)time(NULL));

в

 srand((unsigned)time(NULL)+myID*numProcs + nameLen);

и это дает разные значения для каждого процесса :)

Ответы на вопрос(2)

Ваш ответ на вопрос