Форум программистов, компьютерный форум, киберфорум
Наши страницы

MPI и scanf в С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в задаче про массивы http://www.cyberforum.ru/cpp-beginners/thread804251.html
Написал прогу,строго не судите,но какой то косяк здесь не знаю даже где,она должна Найти сумму элементов массива, которые находятся между максимальным и минимальным числами. В сумму включить и...
C++ Окружность Господа! Как нарисовать систему координат (две оси Ох и Оу) круг с центром в начале координат, если известен максимум по одной из осей? Т.е. центр круга всегда начало коорд. (0) и известна одна... http://www.cyberforum.ru/cpp-beginners/thread804225.html
C++ Разворот строки через указатель
ну вообщем обычное задание развернуть строку наоборот, обычный метод я знаю а как реализвать черерз указатели? for example: char *p=" i love c++" написал но оно не работает ))) char...
C++ Третий аргумент strrok_s
Собственно, что значит 3 аргумент ? Видел уже на этом форуме ответы, но ничего не понял, пожалуйста, не надо давать ссылку мсдн. Объясните, что значит 3 аргумент.
C++ Ошибка во время исполнения http://www.cyberforum.ru/cpp-beginners/thread804202.html
При попытке запустить программу Visual Studio пишет: Unhandled exception at 0x011027ce in GLTore.exe: 0xC0000005: Access violation writing location 0xcdcdcdcd. Кажется, что-то не то с памятью, но я...
C++ Количество подстрок в строке Нужно что-бы пользователь ввел 2 строки и ему вывело сообщение о том, сколько раз встречается строка 2 в первой строке. Как это сделать без классов, так как мы пока их не учили, а задание таковое... подробнее

Показать сообщение отдельно
fragbot

MPI и scanf в С++ - C++

09.03.2013, 22:43. Просмотров 679. Ответов 1
Метки (Все метки)

Вобщем я делаю параллельную программу. Все процессы в этой программе должны узнать некоторое целое число X, которое пользователь вводит с клавиатуры. Я пока знаю только один способ это осуществить - некоторый один процесс (например с рангом 0) получает это число с помощью scanf у пользователя, а затем шлет его в сообщениях всем остальным процессам (см. код ниже). Вопрос - можно ли как-то осуществить это проще (чтобы не использовать MPI_Send)??? Например возможно ли в MPI объявить некую глобальную переменную для такой цели?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <mpi.h>
 
main(int argc, char** argv) {
int rank,p,n,i,tag=0;
MPI_Status st;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &p);
 
if (rank==0) {
   scanf ("%d",&X);
   for (i = 1; i < p; i++) {
        MPI_Send(&X, 1, MPI_INT, i, tag, MPI_COMM_WORLD); 
        }}
   else {
    MPI_Recv(&X, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &st);
    }   
MPI_Finalize();
 }
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru