在OpenACC中使用原子函数
Use atomic functions in OpenACC
我想在OpenACC指令中使用原子函数。pgc++的哪些编译选项可以提供帮助?我应该使用特定的头文件吗?
有一件事需要检查:你是否使用了正确的数据?根据这个论坛,并不是所有的加速器都接受所有的数据类型,也可能不是所有的数据类型都可以自动访问。这个链接的表13表明,Nvidia上的原子似乎只适用于32位整数和浮点数据类型。64位可用于计算容量6.x+。
你说你的代码看起来像:
#pragma acc atomic
{
res[i][i]=res[i][i]+x;
res[j][j]=res[j][j]+y;
}
然而,我不认为你可以像那样将多个原子嵌套在一起。试,而不是:
#pragma acc atomic update
res[i][i]=res[i][i]+x;
#pragma acc atomic update
res[j][j]=res[j][j]+y;
相关文章:
- 从 c 或 cpp 系列子函数返回到主函数
- C++:为什么我的掷骰子函数在掷骰子数量时只返回偶数整数?
- 禁止子函数调用父级的抽象(或虚拟)函数
- 我想要一个具有子函数的函数访问相同的命名函数,而不使用它取决于其子类的类
- 添加字符串类型的类成员会导致调用基类函数而不是子函数
- C++调用子函数
- 如何在C++从父实例调用子函数
- 是否有理由大多数/所有 try-catch 示例只对 throw 语句使用 void 子函数
- CRTP 在父级析构函数中调用子函数
- 在函数和子函数中调用相同的关键部分
- 整数模板参数和子函数调用
- 如何在C++中创建具有子函数的对象
- 使用子函数的继承函数
- 从void子函数检索int值到C++中的函数
- 现有的标准函子/函数,用于检查等于 0
- 通过指针修改子函数中函数的局部变量的内容
- 重载算子函数==
- 如何编写返回类型的函数,该类型是其子函数的返回类型
- c++11 子函数中的随机数生成器
- 更改子函数c++