您要使用每个数字分别对待每个数字的MPI C ++

时间:2018-11-03 20:35:46

标签: c++ mpi

我对MPI C ++有问题。 我有数组int tab = [1,2,3,4,5,6,7,8,9,10,11] 由于进程数,我想划分表。 如果我有两个过程,请除

one process [1,2,3,4,5,6]
two process [7,8,9,10,11]

如果我有三个过程划分:

one process [1,2,3,]
two process [4,5,6,7]
three process [8,9,10,11]

我不知道如何根据-n参数来执行此操作。 我应该如何将董事会的这些部分发送到流程?

1 个答案:

答案 0 :(得分:0)

如果当前等级为<!DOCTYPE html> <html> <head> <title>Ch09 Task Manager</title> <link type="text/css" rel="stylesheet" href="task_list.css"> <script type="text/javascript" src="task_list.js"></script> </head> <body> <main> <h1>Task Manager</h1> <div id="tasks"> <label for="tasks">Task List</label><br> <textarea id="task_list" rows="6" cols="50"></textarea> </div> <label for="task">Task</label><br> <input type="text" name="task" id="task"><br> <input type="button" name="add_task" id="add_task" value="Add Task"><br> <input type="button" name="clear_tasks" id="clear_tasks" value="Clear Tasks"> </main> </body> </html>,等级总数为i,则从偏移量n到偏移量static_cast<int>(size*std::static_cast<double>(i)/n)发送到每个等级。

这将以均衡的方式拆分您的数据(比static_cast<int>(size*std::static_cast<double>(i+1)/n)更好,这将使最后一个排名包含太多数据)。