Я хочу построить двоичное дерево из 4 процессоров в MPI. В корне все процессоры работают вместе, на следующем уровне я разделяю процессоры на 2 группы, и таким образом в листе каждый процессор отвечает за построение локального дерева.Как построить параллельное двоичное дерево в MPI?
Я использовал mpi_comm_slpit для развязывания коммуникатора тока на 2 части. Но проблема в том, как мне отслеживать отношения между родителями и детьми? например, последовательное программирование, мы используем указатель на левый-правый левый элемент? Как я могу справиться с этим в MPI? Благодарю.
[1-4] <-- root
[1-2] [2-3]
[1] [2] [3] [4]
Возможно, вы слишком усложнили работу, разделив коммуникатор по умолчанию. Нарисуйте изображение бинарного дерева с 4 узлами, назовите узлы 0-3. Объявите, что это канонический способ разложения двоичного дерева на 4 процессора, напишите функцию, чтобы процессор, зная его собственный ранг, мог определить, где в двоичном дереве это. Продолжайте общаться. –
Спасибо. Японял твою точку зрения. – user3328775