calc_min找不到reducer_min_index的功能
calc_min function of reducer_min_index isn't found
嘿,伙计们,我正在尝试使用cilk加减速器进行一个简单的find-min操作。出于某种奇怪的原因,我可以包含reducer_min库,但不能使用函数calc_min。有人知道我为什么会犯这个错误吗?
47:错误:"class cilk::reducer_min_index"没有名为"calc_min"的成员
#include <cilk.h>
#include <reducer_min.h>
#include <iostream>
void findMin(int *d, int *v)
{
int nv, totalnv;
*d = largeint;
cilk::reducer_min_index<unsigned,int> min;
cilk_for (int i = 0; i < totalnv ; i++)
{
if(notdone[i] && mind[i] < min.get_value())
{
min.calc_min(i,ohd[i]);
}
}
cilk_sync;
*v = min.get_index();
*d = min.get_value();
}
如有任何建议,我们将不胜感激!
您可能需要将i强制转换为unsigned,以适应模板cilk::reducer_min_index<unsigned,int>
所以用min.calc_min((unsigned)i,ohd[i]);
代替min.calc_min(i,ohd[i]);
来源:源代码
我可以肯定的是,它对我有效。
这将有助于了解您所在的平台以及您使用的Cilk库的版本。(如果您使用的是英特尔编译器,则与您的编译器版本相同。如果您使用Cilk开源工具包,则可以定义环境变量CILK_VERSION
,并运行任何Cilk程序来打印Cilk版本信息。)
顺便说一句,请注意Cilk库标头将位于默认编译器包含路径中目录的cilk
子目录中,因此包含它们的正常方式是使用
#include <cilk/cilk.h>
#include <cilk/reducer_min.h>
如果您使用该表单,您将从标准位置获取标头,而无需将Cilk库添加到包含路径中。
Neil Faiman
英特尔Cilk Plus运行时开发
相关文章:
- 在执行其他功能的同时播放动画(LED矩阵和Arduino/ESP8266)
- 多态性和功能结合
- 带内存和隔离功能的SQLite
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- 类模板的成员功能的定义在单独的TU中完全专业化
- 有没有一种方法可以创建一个带有哈希表的数据库,该哈希表具有恒定时间查找功能
- 如何在C++中获得"静态纯虚拟"功能?
- 两个文件使用彼此的功能-如何解决
- 我应该实现右值推送功能吗?我应该使用std::move吗
- QML按钮点击功能执行顺序
- 无法理解此 return 语句的功能,没有它就会发生运行时错误
- 有没有可能有一个只有ADL才能找到的非好友功能
- 功能样式转换从 'int' 到 'ItemType' 的匹配转换
- 文件系统:复制功能的速度秘诀是什么
- 在用于格式4的arm模拟器中实现功能时的一个问题
- 如何在Directwrite中获得给定字体的可用OpenType功能
- 对可变参数使用声明.如何选择正确的功能
- 询问在设计我的手臂模拟器功能表示格式1
- 如何在 OpenACC 中并行化内部具有"min"功能的循环
- 不知道为什么"std::min"功能CPP有任何问题