Описание тега mpi
MPI - это интерфейс передачи сообщений, библиотека для параллельного программирования с распределенной памятью и де-факто стандартный метод использования кластеров распределенной памяти для высокопроизводительных технических вычислений. Вопросы об использовании MPI для параллельного программирования находятся под этим тегом; вопросы, например, о проблемах установки с реализациями MPI, лучше всего отмечать соответствующими тегами, зависящими от реализации, например MPICH или OpenMPI.
1
ответ
Ошибка сегмента возле MPI Bcast при использовании нескольких процессов
Я новичок в MPI, и в настоящее время я работаю над проектом, который требует от меня проведения анализа массивов в моем локальном кластере beowulf. Мой код написан на C, и он правильно компилируется. Он работает правильно, когда используется только …
23 сен '17 в 02:38
1
ответ
Почему параметр "Tag" не используется в коллективной коммуникации MPI?
В отличие от MPI_Send/ MPI_Recv, отсутствует параметр "Tag" для других функций, связанных с коллективной связью (например, MPI_Bcast/MPI_Gather). Какова причина?
31 май '17 в 16:19
0
ответов
Написание нескольких файлов с использованием стандартных функций ввода-вывода Unix и добавления ранга MPI
Следующая функция выдает ошибку при работе с любым количеством процессов. Может кто-то любезно сказать мне, почему. Я использую MPICH 3.1. (Это не идеальный подход, но я пытаюсь понять основы ввода / вывода MPI - просто говорю, что пример должен раб…
06 апр '14 в 06:37
1
ответ
Как использовать Intel Parallel s Studio и OpenMPi одновременно?
В Ubuntu стандартным mpirun является openmpi, как показано mpirun --version mpirun (Open MPI) 1.10.2 Но после установки Intel Parallel s Studio и добавьте следующие строки в ~/.bashrc . /opt/intel/parallel_studio_xe_2017.4.056/psxevars.sh intel64 Mp…
19 июн '17 в 05:29
0
ответов
Как заставить одно ядро выполнить функцию и передать полученную строку другим ядрам, используя mpi4py?
Я использую mpi4py для распараллеливания моего кода. Есть одна функция, которую я хочу выполнить только одним ядром. До тех пор я хочу, чтобы другие процессоры ждали. Я попытался реализовать эту функциональность, используя следующий фрагмент кода: f…
21 авг '18 в 18:48
0
ответов
MPI_Rsend не вызывает ошибку, когда это должно
Страница man для реализации MPI_Rsend в Open MPI гласит, что Готовая отправка может быть вызвана, только если пользователь может гарантировать, что получение уже опубликовано. Будет ошибкой, если получатель не будет отправлен до вызова готовой отпра…
11 дек '15 в 12:08
1
ответ
Почему MPI_Waitall возвращается до того, как MPI_Irecv получит необходимые данные?
Я решаю уравнение Лапласа с неструктурированной сеткой, используя MPI. Я планирую сначала завершить отправку и получение данных с соседнего раздела, а затем выполнить расчеты для каждого процессора. MPI_Waitall используется для ожидания всех MPI_Ise…
15 ноя '15 в 22:50
1
ответ
Почему в моей Visual Studio 2013 Ultimate нет MPI Cluster Debugger?
Как говорится в этой статье ( http://msdn.microsoft.com/en-gb/library/ee441265.aspx): когда мы создаем приложение MS-MPI в Visual Studio(профессиональное или более позднее), мы можем использовать кластер MPI Отладчик для отладки нашей параллельной п…
17 авг '14 в 05:13
4
ответа
MPI Broadcast переменная автоматического типа
Я работаю над компилятором, который генерирует код C++. В таких случаях, как: MPI_Comm_rank(MPI_COMM_WORLD, &rank); if(rank == 0){ auto i = function(); // do something MPI_Bcast(&i, 1, MPI_INT, 0, MPI_COMM_WORLD); } else{ auto i; MPI_Bcast(&…
08 мар '16 в 12:58
2
ответа
MPI_Scatter избыточные параметры?
Мой вопрос довольно прост, определение функции MPI_Scatter: #include <mpi.h> void MPI::Comm::Scatter(const void* sendbuf, int sendcount, const MPI::Datatype& sendtype, void* recvbuf, int recvcount, const MPI::Datatype& recvtype, int ro…
20 сен '12 в 23:12
1
ответ
С MPI бесполезны пользовательские типы данных, когда есть непрерывный массив?
В моей программе я посылаю другим процессорам несколько строк Матрицы, я пишу код на C и знаю, что C является мажорной строкой. Матрица выделяется в виде 1d массива. matrixInArrayB = malloc(height * width * sizeof(int)); matrixB = malloc(height * si…
10 июл '18 в 09:39
1
ответ
Как реализовать фильтр MPI на коде C?
Я пытаюсь реализовать MPI кода фильтра ниже, но я сталкиваюсь с трудностями при этом. Как это должно быть сделано? Код фильтра: int A[100000][100000]; int B[100000][100000]; for (int i=1; i<(100000 - 1); i++) for (int i=1; j<(100000 - 1); j++)…
14 авг '17 в 14:48
0
ответов
Как разбросать столбцы матрицы с использованием C и MPI при выполнении умножения матрицы на матрицу NxN
У меня есть проект, чтобы написать программу, которая выполняет умножение матриц на две матрицы NxN A и B. Я могу использовать любой алгоритм, но мы узнали об алгоритме Кэннона в классе, так что, вероятно, я буду его использовать. У меня проблемы с …
01 ноя '15 в 04:54
2
ответа
Графический интерфейс для программы MPI
У меня проблема с простой программой MPI. В этой программе есть 3D-точки, и эти точки движутся во время выполнения программы. Я создал простой код с помощью реализованного C++, а затем попытался добавить простой графический интерфейс. Я использовал …
14 июл '09 в 14:01
0
ответов
Связь между mpiexec и mpi4py не работает?
Я написал скрипт, который выполнял на машине Ubuntu 14.04 LTS в python2.7 с использованием mpi4py. Вот фрагмент с самого начала: from mpi4py import MPI comm = MPI.COMM_WORLD rank = comm.Get_rank() size = comm.Get_size() print comm.Get_size() На моем…
15 апр '16 в 14:11
0
ответов
Почему MPI_barrier не синхронизируется правильно?
Вывод нижеприведенного кода Program test Use mpi Implicit None Integer :: rank,num_process,ierr Real (8) :: a Call MPI_Init (ierr) Call MPI_Comm_rank (MPI_comm_world, rank, ierr) Call MPI_Comm_size (MPI_comm_world, num_process, ierr) Call random_num…
21 июл '16 в 08:17
2
ответа
Как распределить вектор из n элементов на p процессоров
Предположим, у меня есть вектор из n элементов, и я хочу распределить его по p-процессам, где n не обязательно кратно p. Каждый процесс имеет ранг от 0 до p-1. Как определить, сколько элементов будет в каждом процессе, чтобы данные распределялись ка…
14 апр '11 в 00:11
1
ответ
Как отправить вложенную структуру, используя MPI_Datatype в MPI, используя C
Я пытаюсь использовать MPI_Datatype для отправки приведенной ниже структуры, но MPI_Send падает при отправке структуры. Мне интересно, как справиться с этой ситуацией. Вот код, который я написал, чтобы определить новый тип данных MPI: typedef struct…
11 май '11 в 19:56
1
ответ
Представлять указатель как строку и наоборот
Я пытаюсь написать программу с использованием MPI, и у меня есть вопрос, который мне очень поможет. Можно ли в MPI каким-либо образом отправить указатель на другой процесс? Я хочу просто отправить указатель, а не копировать память из одного процесса…
16 мар '12 в 14:10
1
ответ
Как манипулировать JPEG в cpp с помощью символов?
Я испытываю очень странное поведение в cpp. Я делаю некоторую параллельную обработку изображений с использованием инфраструктуры MPI, и мне нужно преобразовать 2D-массив JSAMPLE в плоский массив беззнаковых символов. Я могу сделать это, однако, когд…
17 май '17 в 19:35