1 / 1 / 0
Регистрация: 16.09.2019
Сообщений: 55
|
||||||
1 | ||||||
Отправка и прием сообщений в MS MPI16.10.2020, 11:06. Показов 1128. Ответов 2
Программа должна делать следующее: процессы с рангом не равным 0 генерируют вектор размера 100000 (у каждого процесса свой вектор), вычисляют его норму и с помощью функции MPI_Send пересылают результат процессу с номером 0, а процесс с номером 0 принимает результаты с помощью функций MPI_Irecv/MPI_Test и выводит их на экран. Есть код, но работает неправильно, не могу понять, в чем ошибка:
0
|
16.10.2020, 11:06 | |
Ответы с готовыми решениями:
2
MPI. Отправка/приём сообщений по тегам Отправка и прием сообщений WebSocket прием и отправка сообщений Отправка\прием сообщений с применением Indy 10 |
693 / 303 / 99
Регистрация: 04.07.2014
Сообщений: 846
|
|
16.10.2020, 16:10 | 2 |
Lexangross51, Функция
MPI_Test(&rq, &flag, &st); сохранит в переменную flag завершена или нет операция передачи данных. Вы не проверяете этот flag , и следовательно, в переменной norm_r ещё нет нужных данных и выводиться мусор.Добавлено через 2 минуты Кроме этого вы в процессе с rank=0 ждёте данные от самого себя, цикл чтения должен быть 1, а не с 0
0
|
1 / 1 / 0
Регистрация: 16.09.2019
Сообщений: 55
|
|
16.10.2020, 18:44 [ТС] | 3 |
То есть нужно сначала вызвать функцию MPI_Test, затем проверить выполняется ли условие flag==true, а только после этого получать сообщения? Я правильно понимаю?
0
|
16.10.2020, 18:44 | |
16.10.2020, 18:44 | |
Помогаю со студенческими работами здесь
3
Прием и отправка сообщений с использование сокетов WinAPI: отправка и прием сообщений окнам Асинхронные сокеты: Как организовать разделение на прием сообщений и прием файлов Прием сообщений от сервера Прием почтовых сообщений Прием сообщений IdIRC Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |