all_reduce与布尔值

时间:2012-05-07 17:34:43

标签: c++ boost mpi boost-mpi

我正在尝试使用all_reduce函数从每个处理器收集一个布尔值,如果任何布尔值为真(即“或”运算符),则将它们减少为true。但我遇到了为此找到正确语法的问题。我现在拥有的是

all_reduce(world,update,update_sum,or());

我尝试运行此命令时出现以下编译器错误。

time_step_Gear_Verlet.cpp:94: error: expected primary-expression before '||' token
time_step_Gear_Verlet.cpp:94: error: expected primary-expression before ')' token

我尝试使用||()而不是或(),但这也不起作用。也许我错过了什么?或者我还有另一种方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:4)

您应该使用std::logical_ortutorial page具有从C MPI到其在Boost.MPI中的相应操作的操作表。